[英]mysql query results divide into group
從 mysql 查詢中,我想將 5 個結果作為一組包裝成一個li
。 如何? 謝謝
$counter = 1;
while($row = mysql_fetch_array($result)){
echo '<li>';
if ( ($counter % 5) == 0 ){
echo '<div class="title">'.$row['title'].'</div>';
}
$counter ++;
echo '</li>';
}
}
我想要一些 html output 之類的
<li><div class="title">something</div><div class="title">something</div><div class="title">something</div><div class="title">something</div><div class="title">something</div></li>
<li><div class="title">something</div><div class="title">something</div><div class="title">something</div><div class="title">something</div><div class="title">something</div></li>
<li><div class="title">something</div><div class="title">something</div><div class="title">something</div><div class="title">something</div><div class="title">something</div></li>
... <!-- 5 results in one li -->
您需要讓您的 mod % 關閉li
或打開li
,而不是處理div
。
所以是這樣的:
$counter = 1;
while($row = mysql_fetch_array($result)) {
if ( $counter % 5 == 1 ) {
echo '<li>';
}
echo '<div class="title">'.$row['title'].'</div>';
if ( $counter % 5 == 0 ) {
echo '</li>';
}
$counter ++;
}
if ( $counter % 5 != 1 ) {
echo '</li>';
}
尚未對其進行測試,但它應該可以幫助您走上正確的道路。
你看起來很親密,怎么樣:
$counter = 0;
while($row = mysql_fetch_array($result)){
if (($counter % 5) == 0) {
echo '<li>';
}
echo '<div class="title">'.$row['title'].'</div>';
if (($counter % 5) == 4) {
echo '</li>';
}
$counter ++;
}
}
if ($counter % 5 != 4) {
echo '</li>';
}
$x = mysqli_num_rows($result);
$counter = 0;
while($row = mysql_fetch_array($result)){
if ( ($counter % 5) == 0 ){
echo '<li>'
}
echo '<div class="title">'.$row['title'].'</div>';
if (((($counter +1) % 5) == 0) || (($counter+1)==$x)){
echo '</li>'
}
$counter ++;
}
我沒有檢查它,但 mysqli_num_rows 變量可用於最后關閉。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.