здравсте всем. такой вопрос. я делаю выборку из таблицы в БД и вывожу всё в столбик, все значения. а как вывести к примеру по 5 значений в строку1, потом следующие 5 значений в строку2 и т.д. пример кода как я делаю: $result=mysql_query("SELECT * FROM podcat LIMIT 0,5"); $myrow=mysql_fetch_array($result); do {printf ("<p>%s</p>",$myrow["title"]);} while($myrow=mysql_fetch_array($result)); спасибо заранее.
ок, согласен, а как в цикле счетчика вывести не весь диапазон а части по 3 значения каждая? for ($i = 0; $i <= 10; $i++) {echo $i;}
определись что нужно. например вывести в строку по пять записей - считать $i, когда она доходит до 5 - обнулять и переходить на новую строку через <br> (или новую строку таблицы выводить, неважно) то есть если в базе 100 записей у тебя будет 20 строчек по 5 значений. Зачем тогда LIMIT 0,5 в запросе?
я вообще-то не про LIMIT, просто пробую так выводить, но коряво получается, поэтому и спрашиваю как. задача - вывести 100 записей к примеру по 10 записей в несколько строк.
вот что вышло, но это бесконечный вывод первых 4 значении: for ($i = 0; $i <= 10; $i++) {if ($i>4) {$i=0; echo "<br>";} echo $i;}
PHP: <?php $a = array(); $temp_ar = mysql_query("SELECT * FROM `table1`"); $num = mysql_num_rows($temp_ar); while ($temp = mysql_fetch_assoc($temp_ar)) { $a[] = $temp; } for($i = 0; $i < $num; $i++) { echo $a[$i]['id']; if($i > 1 && $i%5 == 0) echo '<br>'; } не лучший вариант но работает. можно и с одним циклом вместо двух, щас на ум не приходит как не по-индусски сделать
пробовал я так. и по другому и вместо других нулей 1-цы подставлял. не катит. все дело в том, что когда я перебор делаю в ассоциат.массив там автоматом нулевой ключ появляется. while ($temp = mysql_fetch_assoc($temp_ar)) { $a[] = $temp; } и в $temp и в $a есть уже нулевой ключ. как можно этот ключ в 1 превратить, чтоб было так: $arr[1] = one; $arr[] = two; и т.д.
... PHP: for($i = 1; $i <= $num; $i++) { echo $a[$i-1]['id']; ... А вообще лучше сразу выводить. PHP: <?php $result = mysql_query( 'SELECT * FROM `table1`'); $i = 0; while( $row = mysql_fetch_assoc( $result)) { echo $row['id']; if( ++$i % 5 == 0) echo '<br />'; } ?>