Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Рекурсия или еще как... /вывод с базы по примеру/
 
 автор: virtus   (26.04.2006 в 15:00)   письмо автору
 
 

Извините, пока ждал ответа, нашел простое решение :)
Но есть другой вопрос -

$sfl = mysql_query("SELECT * FROM cat WHERE pidcat=0 ORDER BY pm,name");
while ($row = mysql_fetch_array($sfl) ) 
{
echo "<tr><td><a $row[idcat]'>$row[name]</a></td></tr>";
}

в данной ситуацие таблица будет идти в одну колонку!
А как мне сделать так, что бы она шла в две колонки? предпологаю, что массив, но не знаю как в жизнь воплотить :(

   
 
 автор: cheops   (27.04.2006 в 00:09)   письмо автору
 
   для: virtus   (26.04.2006 в 15:00)
 

Какой из двух вариантов вас интересует
1)
1 2
3 4
5 6
7 8
9 10

или 2)
1 6
2 7
3 8
4 9
5 10

   
 
 автор: virtus   (27.04.2006 в 11:04)   письмо автору
 
   для: cheops   (27.04.2006 в 00:09)
 

Вариант № 2

   
 
 автор: Trianon   (27.04.2006 в 11:28)   письмо автору
 
   для: virtus   (27.04.2006 в 11:04)
 

Примерно так:
<?
$sfl 
mysql_query("SELECT * FROM cat WHERE pidcat=0 ORDER BY pm,name");
$tab = array(); $columns 2;
$i $j 0;
while (
$row mysql_fetch_array($sfl) )
{
   if(
$j >= $columns) { $j=0; ++$i; }
   
$tab[$i][$j++] = $row;
}
echo 
'<table>';
for(
$i 0$i count($tab); ++$i)
{
  echo 
"<tr>";
  for(
$j 0$j count($tab[$i]); ++$j)
    echo 
"<td><a href='?idcat=".$tab[$i][$j]['idcat']."'>".$tab[$i][$j]['name']."</a></td>";
  echo 
"</tr>\r\n";
}
echo 
'</table>';

?>

   
 
 автор: virtus   (27.04.2006 в 12:09)   письмо автору
 
   для: Trianon   (27.04.2006 в 11:28)
 

не работает :(
просто вывод последнюю запись трижды и все!

   
 
 автор: Trianon   (27.04.2006 в 12:15)   письмо автору
 
   для: virtus   (27.04.2006 в 12:09)
 

В строке $tab[$i][$j] = $row; забыл дописать инкремент.
$tab[$i][$j++] = $row; 

   
 
 автор: virtus   (27.04.2006 в 12:38)   письмо автору
 
   для: Trianon   (27.04.2006 в 12:15)
 

тоже самое :(

   
 
 автор: Trianon   (27.04.2006 в 12:47)   письмо автору
 
   для: virtus   (27.04.2006 в 12:38)
 

Может Вы тег <table> забыли?

   
 
 автор: virtus   (27.04.2006 в 13:03)   письмо автору
 
   для: Trianon   (27.04.2006 в 12:47)
 

так табле причем тут?
если php не верно выводит данные

   
 
 автор: Trianon   (27.04.2006 в 13:07)   письмо автору
 
   для: virtus   (27.04.2006 в 13:03)
 

Я проверил только что с минимальными изменениями на своей таблице. Скрипт выводит данные верно. Хоть на две колонки - хоть на десять.

   
 
 автор: virtus   (27.04.2006 в 14:03)   письмо автору
 
   для: Trianon   (27.04.2006 в 13:07)
 

Спасибо %)

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования