2016-05-31 6 views
0

ich alle Zeilen aus MySQL-Datenbank mit folgenden PHP-Schleife zeigt:Wie man einige Spalten und dann Rest anderer Spalten in der php while-Schleife zeigt?

<tr> 
    <?php 
    $get_status = mysqli_query($link, "SELECT * FROM status ORDER BY status_order ASC"); 
     while($status_result = mysqli_fetch_array($get_status)) { 
      $status_name = htmlspecialchars($status_result['status_name']); 
      $status_order = htmlspecialchars($status_result['status_order']); 
      echo "<td><input type='checkbox' name='$status_name' value='$status_name'>$status_name</td>"; 
     } 
    ?> 
</tr> 

Als Ergebnis Es ist so aussehen:

enter image description here

Aber was ich will ist folgendes:

Ich möchte nur 5 Spalten und dann 5 Spalten zeigen und dann noch eins und so weiter ... ich n php while-Schleife. Wie kann ich das machen ?

+0

Was möchten Sie tun? Eine neue Zeile alle fünf Werte? – DerVO

Antwort

2

eine Variable hinzufügen Überblick über die Anzahl zu halten, dann bedingt eine neue Zeile machen, etwa so:

<?php 

    $get_status = mysqli_query($link, "SELECT * FROM status ORDER BY status_order ASC"); 

    $n = 0; //Keep track 

    while($status_result = mysqli_fetch_array($get_status)) { 
     $status_name = htmlspecialchars($status_result['status_name']); 
     $status_order = htmlspecialchars($status_result['status_order']); 
     echo "<td><input type='checkbox' name='$status_name' value='$status_name'>$status_name</td>"; 

     $n++; //Increase $n 
     if($n%5===0) echo "</tr><tr>"; //Make a new row every 5 iterations of loop 
    } 
+1

Ich mag den Einsatz von Modulo anstatt den Zähler zurückzusetzen! – xQbert

+0

Lassen Sie mich Ihren Code verwenden @Ben –

+1

Wow, es funktioniert gut :) –

Verwandte Themen