Вам нужно относиться к <tr>
специально. Правильно, вы выводите одну одноклеточную строку для каждого результата в вашем запросе. Вместо этого вам нужно:
$cells_printed = 0;
while($info = mysql_fetch_array( $data )) {
if ($cells_printed % 6 == 0) {
echo '</tr><tr>'; // start a new row
}
echo '<td>blahblahblah</td>';
$cells_printed++;
}
Это будет печатать теги <tr>
, только когда ячейка, в которой вы находитесь, будет кратна 6, что означает, что вы достигли конца строки.
Вам понадобится дополнительный специальный корпус для обработки первой напечатанной строки, чтобы у вас не было висящего </tr>
в начале таблицы, но этого должно быть достаточно, чтобы начать работу. Вам также понадобится специальная обработка регистра для последней строки, поэтому вы должны правильно закрыть строку, даже если в этот момент печатается не «шестая» ячейка.