2016-05-20 10 views
2

が今はネストwhileループとPHPとif-else条件テーブルのリストを構築したい、コードのフォーマットは以下の通りである:PHPでテーブルを2つに分割してエコーするにはどうすればいいですか?

while(){ 
    if(){ 
     ..... // extract the data 
     while(){ 

      construct a table using the data extracted above 
     } 
    } 
    elseif(){ 
     ..... // extract the data 
     while(){ 

      construct a table using the data extracted above 
     } 
    } 
} 

具体的には、内部ループコードがあるとき:

while ($chat = mysqli_fetch_assoc($chatQ)) 
     { 
      echo 
      "<table class='table table-hover' >" 
       ."<td>" 
        .$conver['sender_name']."\t".$chat['sender']."\t".$chat['send_time']."\t".$chat['content'] 
       ."</td>" 
       ."<td>" 
        ."<form id='join' action='group_chat.php' method ='POST' accept-charset='UTF-8'>" 
         // post the group id 
         ."<input type='hidden' name='group_id' id='group_id' value=".$conver['sender_id']."/>" 
         ."<button class='btn btn-default' type='submit'>Enter</button>" 
        ."</form>" 
       ."</td>"   
      ."</table>"; 
     } 

しかし、結果は非常に醜いです: enter image description here

問題がEnterボタンが関連付けられていることですメッセージごとにしかし、私が望むのは、すべてのメッセージを表示した後、特定のグループに誘導できるEnterボタンがあるということです。しかし、私はコードをどのように分離するのか分かりません。私に恵まれてください。前もって感謝します!

答えて

2

あなたはこのような何かを行うことができます。

<?php 
$counter = 0; 
echo ' 
<form> 
    <table>'; 
while ($chat = mysqli_fetch_assoc($chatQ)){ 
    $counter++; 
    echo ' 
     <tr> 
      <td> 
       group_id_'.$counter.' 
      </td> 
      <td> 
       <input name="group_id_'.$counter.'" value="'.$conver['sender_id'].'"> 
      </td> 
     </tr>'; 
} 
    echo ' 
     <tr> 
      <td colspan="2"> 
       <button type="submit">Enter</button> 
      </td> 
     </tr> 
    </table> 
</form>'; 
?> 

はまた、あなたは、変数を設定することにより、順番にすべてのものをエコーために自分自身を制限するために持っていけません。下記の例を参照してください。

<?php 
$counter = 0; 
$data = NULL; 
while ($chat = mysqli_fetch_assoc($chatQ)){ 
    $counter++; 
    $data .=' 
     <tr> 
      <td> 
       group_id_'.$counter.' 
      </td> 
      <td> 
       <input name="group_id_'.$counter.'" value="'.$conver['sender_id'].'"> 
      </td> 
     </tr>'; 
} 
    echo ' 
<form> 
    <table>'.$data.' 
     <tr> 
      <td colspan="2"> 
       <button type="submit">Enter</button> 
      </td> 
     </tr> 
    </table> 
</form>'; 
?> 
関連する問題