Sto creando un forum in PHP. Devo visualizzare tutte le categorie del forum in una tabella, e per farlo, ho usato un ciclo while. Tuttavia, voglio avere solo 3 td in ogni fila di tavoli. Per scorrere tra le categorie, sto usando un ciclo while con la query, quindi non penso di poter usare il modulo qui.Inserire tr dopo il terzo ciclo
risposta
Perché non è possibile utilizzare il modulo? Basta aggiungere un contatore da qualche parte, e se colpisce % 3 == 0
azzera il contatore e fai il tuo lavoro.
Potrebbe essere necessario aggiungere un extra se è il primo e l'ultimo e cose del genere, ma non c'è motivo per non utilizzare un modulo con un po 'di tempo.
$i=0;
while(guard()){
if($i % 3 == 0){
//ploing
}
$i++
}
Ah, geniale! Devo imparare come funziona questo modulo. – user1169875
+1 per effetti sonori eccellenti ... – squarecandy
Non ho ancora testato il codice, ma la logica dovrebbe funzionare:
<Table>
<?php
$i = 0;
while($row = mysql_fetch_array($result)){
if($i == 0){
echo"<TR>";
}
echo"<td>".$row[0]."<TD>";
$i++;
if($i == 3)
{
$i = 0;
echo"</tr>"
}
}
if($i ==1){
echo "<td></td><td></td></tr>";
}
if($i ==2)
{
echo "<td></td></tr>";
}
?>
<table>
Questo codice si chiuderà tutte le righe in più:
<table>
<?php
$i = 0;
while($row = mysql_fetch_array($result)){
$i++;
//if this is first value in row, create new row
if ($i % 3 == 1) {
echo "<tr>";
}
echo "<td>".$row[0]."</td>";
//if this is third value in row, end row
if ($i % 3 == 0) {
echo "</tr>";
}
}
//if the counter is not divisible by 3, we have an open row
$spacercells = 3 - ($i % 3);
if ($spacercells < 3) {
for ($j=1; $j<=$spacercells; $j++) {
echo "<td></td>";
}
echo "</tr>";
}
?>
</table>
Grazie amico! Questa community è assolutamente la più utile che ho trovato! – user1169875
- 1. inserire più campi utilizzando il ciclo foreach
- 2. Per ciclo con printf come terzo argomento
- 3. Come nascondere il terzo elemento td?
- 4. Cosa XPath seleziona il prossimo <tr> dopo un <tr> contenente X?
- 5. Come aggiungere nuovo <tr> dopo l'attuale <tr>
- 6. Python: Continua il ciclo dopo l'eccezione
- 7. SQL Server 2008 Inserire con ciclo while
- 8. angularJS - Ripetizione TR di in una tabella, ma aggiungendo dinamicamente più righe, mentre il ciclo
- 9. mysqli_poll() - qual è il terzo parametro?
- 10. seleziona solo terzo li
- 11. Il tag <tr> è facoltativo?
- 12. jQuery - Focus su TR
- 13. Effetto del punto e virgola dopo il ciclo 'for'
- 14. Perché il ciclo for si interrompe dopo una ripetizione?
- 15. Eliminazione di un buffer/generatore di stringhe dopo il ciclo
- 16. Qualcosa dopo il ciclo DOS FOR/F non in esecuzione
- 17. Evitando la ripetizione del codice dopo il ciclo?
- 18. jQuery selezione TR più vicina
- 19. Laravel Eloquente come ottenere il secondo o il terzo record?
- 20. Jquery per il ciclo di scrittura html dopo ogni terza iterazione del ciclo
- 21. Inserire lo spazio dopo la lettera maiuscola
- 22. unix tr find e replace
- 23. Html table tr inside td
- 24. accesso Javascript TR da TD
- 25. Ciclo con statoT: perché questo ciclo non fa il ciclo
- 26. Qual è il terzo stato booleano in java?
- 27. Come inserire testo normale?
- 28. Challenge ripetendo tr con ng-repeat
- 29. php while variabile loop per ogni terzo div
- 30. Come specificare il bordo inferiore di un <tr>?
mostraci il tuo codice –
Si potrebbe usare l'operatore di modulo '%' semplicemente creando una variabile di incremento '$ i = 0' prima del ciclo e incrementando' ++ $ i' in ogni iterazione del ciclo while. – rdlowrey