Есть одна такая протертая темы у меня. Вывод из базы в три колонки в вертикальном направлении...
Много вариантов просмотрел. Посмотрел пример нашего форумчанина KIRIKa. Работает, но в его примере все выводтся в свое td и id записи и название и текст и т.д. Это не подходит.
Есть у кого попроще примеры?
1|7 |13
2|8 |14
3|9 |15
4|10|16
5|11|17
6|12|18
Записей в базе много....
Спустя 3 минуты, 47 секунд (2.05.2012 - 21:38) Игорь_Vasinsky написал(а):
какой вид надо то???
Спустя 2 минуты, 12 секунд (2.05.2012 - 21:40) MillerLight написал(а):
1|7 |13
2|8 |14
3|9 |15
4|10|16
5|11|17
6|12|18
2|8 |14
3|9 |15
4|10|16
5|11|17
6|12|18
Спустя 4 минуты, 37 секунд (2.05.2012 - 21:45) Игорь_Vasinsky написал(а):
и бд такой структуры?
Спустя 36 секунд (2.05.2012 - 21:45) alexbel2404 написал(а):
строк сколько должно быть?
Спустя 3 минуты, 19 секунд (2.05.2012 - 21:49) MillerLight написал(а):
база id | name | img
записей множество... Значит и строк получится многовато))) главное в три колонки.
Причем надо чтоб в каждой ячейки таблицы выводилось все что есть в данном id.
записей множество... Значит и строк получится многовато))) главное в три колонки.
Причем надо чтоб в каждой ячейки таблицы выводилось все что есть в данном id.
Спустя 6 минут, 18 секунд (2.05.2012 - 21:55) alexbel2404 написал(а):
хм, что-то мыслей вообще нет, пора на отдых идти)
Спустя 59 секунд (2.05.2012 - 21:56) MillerLight написал(а):
Согласен. Всем цветных снов. Завтра надеюсь решу задачку))))
Спустя 27 секунд (2.05.2012 - 21:56) Игорь_Vasinsky написал(а):
$query = mysql_query("SELECT `cell` FROM `table`");
echo '<table><tr>';
if(mysql_num_row($query))
{
$i = 0;
while($row = mysql_fetch_assoc($query))
{
$i++;
echo '<td>'.$row['cell'].'</td>';
if($i%3==0)
echo '</tr><tr>';
}
}
else
echo '<td colspan="3" align="center">No records founded!</td>';
echo '</tr></table>';
на примере:
<?php
$row = range(1,28);
echo '<table border="1"><tr>';
$i = 0;
foreach($row as $r)
{
$i++;
echo '<td>'.$r.'</td>';
if($i%3==0)
echo '</tr><tr>';
}
echo '</tr></table>';
?>
вывод:
1 2 3
4 5 6
7 8 9
10 11 12
13 14 15
16 17 18
19 20 21
22 23 24
25 26 27
28
Спустя 30 секунд (2.05.2012 - 21:57) Игорь_Vasinsky написал(а):
слабочки
Спустя 2 минуты, 56 секунд (2.05.2012 - 22:00) alexbel2404 написал(а):
да так любой сможет)))) ты посмотри на порядок вывода, который ему нужен)
Спустя 4 минуты, 21 секунда (2.05.2012 - 22:04) Игорь_Vasinsky написал(а):
сделать выборку в массив - а массив крутить как хотеть. пересобрать:
2х мерный массив
$arr[1] = array(1,4,7, 10 ....);
$arr[2] = array(2,5,8, 11 ....);
$arr[3] = array(3,6,9, 12 ....);
и в for() всё разложить.
2х мерный массив
$arr[1] = array(1,4,7, 10 ....);
$arr[2] = array(2,5,8, 11 ....);
$arr[3] = array(3,6,9, 12 ....);
и в for() всё разложить.
Спустя 6 часов, 37 минут, 13 секунд (3.05.2012 - 04:41) MillerLight написал(а):
Игорь_Vasinsky благодарю! Горизонтальный уже освоил. Интересен вертикальный теперь.
Все перерыл.
Если кто то конкретно знает начните. А я уж с вашим надзором его закончу )))))
Все перерыл.
Если кто то конкретно знает начните. А я уж с вашим надзором его закончу )))))
Спустя 9 часов, 45 минут, 7 секунд (3.05.2012 - 14:26) MillerLight написал(а):
Я так понимаю должно быть следующшее.
Допустим в базе 8 записей. Надо 3 столбца.
8/3=2,6 через функцию округления получаем 3 значит сторк будет 3
Дальше пока не додумал))))
Допустим в базе 8 записей. Надо 3 столбца.
8/3=2,6 через функцию округления получаем 3 значит сторк будет 3
Дальше пока не додумал))))
Спустя 3 часа, 16 минут, 37 секунд (3.05.2012 - 17:43) MillerLight написал(а):
Всем спасибо! Отлично внедрился пример с форума.
Спустя 9 часов, 38 минут, 10 секунд (4.05.2012 - 03:21) Игорь_Vasinsky написал(а):
который?
Спустя 4 минуты, 48 секунд (4.05.2012 - 03:26) Игорь_Vasinsky написал(а):
вообще так можно было:
$count - общее кол-во строк
$i = ceil($count/3);
$row = isset($row['cell']) ? $row['cell'] : null;
Собрать выборку в массив
в цикле for() раскидать по 3 ячейки в строке, вторая ячейка ключ + 1, третья ключ+2
$count - общее кол-во строк
$i = ceil($count/3);
$row = isset($row['cell']) ? $row['cell'] : null;
Собрать выборку в массив
в цикле for() раскидать по 3 ячейки в строке, вторая ячейка ключ + 1, третья ключ+2
Спустя 15 часов, 45 минут, 59 секунд (4.05.2012 - 19:12) MillerLight написал(а):