ПОмогите сделать вывод из базы на mysql в виде таблицы в несколько колонок

vaucher

Новичок
ПОмогите сделать вывод из базы на mysql в виде таблицы в несколько колонок

Есть база! Нужно вывести id-шники в таблице в две колонки или более.
 

vaucher

Новичок
Я только учусь! поэтому комуто покажется вопрос странным...
есть такой код
echo"<table>";


$i=0;
while($row_goods=mysql_fetch_assoc($res))
{
$i++;
echo "<tr>";
echo "<td>
<a href='show_name.php?id=".$row_goods['id']."'>
<img src='http://www.italbags.ru/images/goods/small/".$row_goods['name'].".jpg' hspace='10' vspace='10'>
<br><center><b>". $row_goods['name'] ."</b></center>

</a>
</td>";
echo "</tr>";
}


echo"</table>";

он выводит в одну колонку, а вот сделать в несколько у меня не получается
 

matross

Новичок
Ну вот там где у тебя закрывается </tr> поставть то, что я написал в предидущем посте, ну и инкремент свой в конец поставь, а не в начало цикла
 

vaucher

Новичок
Я правильно понял?
Так?
echo"<table>";

$i=0;
while($row_goods=mysql_fetch_assoc($res))
{
echo "<tr>";
echo "<td>
<a href='show_name.php?id=".$row_goods['id']."'>
<img src='http://www.italbags.ru/images/goods/small/".$row_goods['name'].".jpg' hspace='10' vspace='10'>
<br><center><b>". $row_goods['name'] ."</b></center>
</a>
</td>";

if ($i%2==0) echo "</tr>";
$i++;
}

echo"</table>";

У меня результат не изменился!
 

matross

Новичок
<?
echo"<table border=1>";
$i=0;
echo "<tr>";
for ($i=0;$i<9;$i++)
{
echo "<td>".$i."</td>";
echo $i%2;
if ($i%2==1) echo "</tr>";
}
echo"</table>";
?>
Вот рабочий вариант, проведи аналогию
 

vaucher

Новичок
Про деление с остатком конечно понятно, и про цикл for- тоже, но может кто поможет разобраться с конкретным(приведенным выше) примером?

Заранее Благодарен Всем.
Перепробовал уже кучу вариантов, но до сих пор результата нет
 

zarus

Хитрожопый макак
PHP:
<?php
  echo '<table border=1><tr>';
  $max_id = 100;
  $max_in_row = 10;
  for ($i=1;$i<$max_id+1;$i++) {
    echo '<td>'.$i.'</td>';
    if (
      # Проверяем, является ли элемент 10м по счету
      ($i%$max_in_row == 0) &&
      # Проверяем, не является ли элемент последним, так как закрытие строки все равно произойдет
      ($i< $max_id)
    ) echo '</tr><tr>';
  }
  echo '</tr></table>';
?>
 

vaucher

Новичок
Все понятно, но как енто применить
на конкретном примере :
<?
echo"<table>";

$i=0;
while($row_goods=mysql_fetch_assoc($res))
{
$i++;
echo "<tr>";
echo "<td>
<a href='show_name.php?id=".$row_goods['id']."'>
<img src='images/".$row_goods['name'].".jpg' hspace='10' vspace='10'>
<br><center><b>". $row_goods['name'] ."</b></center>

</a>
</td>";
echo "</tr>";
}

echo"</table>";
?>

Именно в цикле - WHILE !!!!!
Или подскажите как вывести не $i , А данные из базы
Подставлять вместо $i пробовал, но результат не тот
 

Kelor

Новичок
<?
echo"<table>";

$i=0;
while($row_goods=mysql_fetch_assoc($res))
{
if($i%2==0)
echo "<tr>";

echo "<td>
<a href='show_name.php?id=".$row_goods['id']."'>
<img src='images/".$row_goods['name'].".jpg' hspace='10' vspace='10'>
<br><center><b>". $row_goods['name'] ."</b></center>

</a>
</td>";

if($i%2==1)
echo "</tr>";
$i++;
}

echo"</table>";
?>
 

zarus

Хитрожопый макак
2 Kelor,
Не надо переделывать неправильные скрипты, надо писать правильные. Ты свой скрипт проверял?

2 vaucher,
А ты подумай, голова для чего?
PHP:
  $result = mysql_query(...);
  if (false != ($max_id = mysql_num_rows($result))) {
    echo '<table border=1><tr>';
    $max_in_row = 10;
    $i = 0;
    while (false !== ($row = mysql_fetch_assoc($result))) {
       <выводим ячейку>
       if (
          # Проверяем, является ли элемент 10м по счету
          ($i%$max_in_row == 0) &&
          # Проверяем, не является ли элемент последним, так как закрытие строки все равно произойдет
          ($i< $max_id)
        ) {
         echo '</tr><tr>';
         $i++;
       }
     }
  }
  echo '</tr></table>';
 

vaucher

Новичок
Одна голова конечно, думающая - эт хорошо, но эта голова уже неделю кипит, а толку ноль!

Этот вариант ноже не работает.
Перевернул скрипт уже как только мог, но резульат тотже

Может кто-нить рабочий проверенный скрипт выложить?
Плииз!

-~{}~ 23.12.05 17:01:

В общем оказалось все намного проще
результат работает, а код получилсявот такой:


echo "<table>";
$i=0;
while($row = mysql_fetch_assoc($result))
{
if($i%4==0)echo "<tr>";

echo "<td>". $row['id'] ."</td>";

if(($i+1)%4==0)echo "</tr>";

$i++;
}
echo "</table>";


Всем спасибо за помощь!!! :)
 

zarus

Хитрожопый макак
Голова садовая... ему готовый скрипт выложили, а он...
з.ы. 2 проверки, когда можно 1... ужоснафих...
 

vaucher

Новичок
Голова может и садовая, только готовый скрипт почему-то не дал желаемых результатов, во всяком случае у меня...
 

zarus

Хитрожопый макак
Потому что надо было разобраться как он работает, а не заниматься copy&paste'ом... Потому и садовая... Работай над собой!
з.ы.
PHP:
 if($i%4==0)echo "<tr>";
 ...
 if(($i+1)%4==0)echo "</tr>";
И получился у тебя бред... Исправь код
 
Сверху