Tworzę forum w PHP. Muszę wyświetlić wszystkie kategorie forum w tabeli, a do tego użyłem pętli while. Jednak chcę mieć tylko 3 td w każdym rzędzie tabeli. Aby przeglądać kategorie, używam pętli while z zapytaniem, więc nie sądzę, żebym mógł użyć tutaj modulusa.Wstaw tr po co trzeciej pętli
Odpowiedz
Dlaczego nie możesz użyć modułu? Po prostu dodaj gdzieś licznik, a jeśli trafi on % 3 == 0
zresetuj licznik i zrób swoje rzeczy.
Być może trzeba będzie zrobić dodatkowe, jeśli chodzi o pierwszy i ostatni, i takie tam, ale nie ma powodu, aby nie używać modulo przez pewien czas.
$i=0;
while(guard()){
if($i % 3 == 0){
//ploing
}
$i++
}
Ah, genialny! Muszę się powiesić na tym module. – user1169875
+1 dla doskonałych efektów dźwiękowych ... – squarecandy
nie testowałem ten kod, ale logika powinno działać:
<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>
Kod ten zostanie zamknięty żadnych dodatkowych rzędów:
<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>
Dziękuję człowieku! Ta społeczność jest absolutnie najbardziej pomocna, z jaką się zetknąłem! – user1169875
- 1. Jquery dla pętli pisać html po co trzeciej iteracji pętli
- 2. Co XPath wybiera następne <tr> po <tr> zawierające X?
- 3. Co to jest zmienna pętli po pętli w Delphi?
- 4. jQuery Wstaw po oddzwonieniu?
- 5. Co to jest "Skala trzeciej generacji"?
- 6. SQL Server 2008 Wstaw z pętli while
- 7. Po kliknięciu wstaw inny szablon
- 8. Zapętlenie przez <tr> po przekazaniu identyfikatora tabeli
- 9. Jak dołączyć nowy <tr> po bieżącym <tr>
- 10. prepareForSegue wywoływane przed didSelectRowAtIndexPath dopiero po dodaniu trzeciej zmiany
- 11. Wstaw zawartość pliku po dopasowaniu określonego wzorca
- 12. Przesłanianie strony trzeciej JS
- 13. Unikanie powtórzenia kodu po pętli?
- 14. Vim odpowiednik "tr" polecenia
- 15. Czy python oficjalnie obsługuje ponowne użycie zmiennej pętli po pętli?
- 16. Zdobądź co 100-tą wartość w pętli
- 17. Komentarze drugiej i trzeciej osoby?
- 18. Regex dla trzeciej osoby czasownika
- 19. Korzystanie tr zastąpić przełamane przestrzeni
- 20. jQuery - Skoncentruj się na TR
- 21. tr [: upper:] [: lower:] z cyrylicą
- 22. pętli poprzez elementów XML
- 23. Po co zapętlać dane po użyciu WHERE w Laravel?
- 24. jak ograniczyć do trzech pętli foreach pętli
- 25. Szyny pętli View
- 26. Co oznacza niniejszy warunek zakończenia pętli Java?
- 27. Dlaczego TR nie przyjmuje stylu?
- 28. unix tr znajdź i zamień
- 29. Proszę wybrać obok ostatniego tr
- 30. tr display brak błędów ie9
pokazać nam swój kod –
Można użyć operator modulus '%' po prostu tworząc zmienną inkrementującą '$ i = 0' przed pętlą i zwiększając ją' ++ $ i' w każdej iteracji pętli while. – rdlowrey