2012-01-14 1 views
0

I echo возвращает порядок DESC из таблицы MySQL с циклом while. Я уже установил систему разбиения на страницы, и ее размер составляет 9 записей на странице. Проблема в том, что если я это сделаю:php mysql - echo clear division после 3-го результата

// ECHO CSS BREAK 
if($row['id'] % 3 == 0){ 
    echo '<li class="clear"></li>'; 
} 

// SHOW VIDEOS 
while($row = mysql_fetch_array($result)){ 
    echo '<li>...echo code...</li>'; 
    // problem = implement that echo css break in ASC order 
} 

ответ

0

Это то, что вы ищете для реализации?

// SHOW VIDEOS 
while($row = mysql_fetch_array($result)){ 
    if($row['id'] % 3 == 0){ 
     echo '<li>...echo code...</li>'; 
     echo '<li class="clear"></li>'; 
    } else { 
     echo '<li>...echo code...</li>'; 
    } 
} 
+0

@flo также делает хорошую точку, поскольку константа будет более надежной, так как идентификатор может быть не последовательным. – Silvertiger

+0

Спасибо! Но это код для заказа DESC. Моя проблема в том, что мне нужно преобразовать заказ из DESC в ASC. – loverbot

2

Использовать переменную цикла, например.

$i = 0; 

Тогда вместо

if ($row['id'] % 3 == 0) { 

сделать

if (++$i % 3 === 0) { 

Это гарантирует, что всегда происходит в третий [шестой, девятый, ...] время. Возможно, вы захотите получить произвольные строки из базы данных в другой момент времени или перетасовать результаты - полагаясь на идентификаторы строк, это не очень хорошая идея.

+0

Спасибо, он работает! ;) – loverbot