Итак имееться база с полями:
id | Name | Value | Group
1 | Мышка k23 | Что-то | 1
2 | Мышка Logitech | Что-то | 1
3 | Клава Microsoft | Что-то | 2
4 | Клава A4Tech | Что-то | 2
5 | Материнка m2n | Что-то | 3
Собственно вывод
<?php
$result = mysql_query("SELECT * FROM $dbtable");
while ($row = mysql_fetch_assoc($result)) {
echo $row["name"];
echo $row["value];
}
?>
Вывод этого я думаю понятен:)
А надо чтоб шло не подряд а с разделением на группы:
Мышки
..Список мышек в базе (выборка по групе 1)
Клавиатуры
..Список мышек в базе (выборка по групе 2)
и тд.
Хочеться сделать это без отдельного запроса под каждую групу типа:
echo "Мышки";
$result = mysql_query("SELECT * FROM $dbtable WHERE group=1");
..тут вывод строк
echo "Клавиатуры";
$result = mysql_query("SELECT * FROM $dbtable WHERE group=2");
..вывод строк
Как это реализовать на php чтоб он выводил название группы, а потом список того что в группе?
Как-то криво обьяснил, надеюсь помете о чем речь

Спустя 8 минут, 54 секунды (20.04.2010 - 16:43) DedMorozzz написал(а):
order by
А запрос, в любом случае делай 1. Далее пыхом уже разбирай и сортируй результаты выборки.
А запрос, в любом случае делай 1. Далее пыхом уже разбирай и сортируй результаты выборки.
Спустя 2 минуты, 51 секунда (20.04.2010 - 16:46) Oskar написал(а):
Нет, вы всеже не поняли 
Нужно чтоб перед выводом из базы выводилось название группы, а не просто отсортировать по группам.

Нужно чтоб перед выводом из базы выводилось название группы, а не просто отсортировать по группам.
Спустя 4 минуты, 10 секунд (20.04.2010 - 16:50) Oskar написал(а):
Т.е никак не сделать? Должно же как-то быть более адекватно, если групп допустим 50, это значит мне надо 50 селектов сделать, и если я хочу новую группу добавть то это опять код изменять?
Спустя 3 минуты, 40 секунд (20.04.2010 - 16:54) vagrand написал(а):
2-а запроса:
1. Выборка всех групп;
2. По id выбранных групп выборка всех товаров через IN ();
А потом раскидываешь товары по группам
1. Выборка всех групп;
2. По id выбранных групп выборка всех товаров через IN ();
А потом раскидываешь товары по группам
Спустя 35 секунд (20.04.2010 - 16:54) DedMorozzz написал(а):
ага, ну смотри метод который первым пришёл в голову:
берём название группы, запоминаем и записываем в эчо, далее рисуем 1ю строку этой группы. Далее 2я строка сравниваеться с 1й, если група та же - дописываем ниже 2ю строку, если отличаеться, тогда заголовком название групы и пишем эту строку. Как-то так. Надеюсь мысль донёс, хотя сомневаюсь. Вобщем если не понял поподробнее распишу
берём название группы, запоминаем и записываем в эчо, далее рисуем 1ю строку этой группы. Далее 2я строка сравниваеться с 1й, если група та же - дописываем ниже 2ю строку, если отличаеться, тогда заголовком название групы и пишем эту строку. Как-то так. Надеюсь мысль донёс, хотя сомневаюсь. Вобщем если не понял поподробнее распишу
Спустя 43 секунды (20.04.2010 - 16:55) DedMorozzz написал(а):
выборку всего отсортировано по группам делаем сразу и единожны
Спустя 2 минуты, 46 секунд (20.04.2010 - 16:58) Oskar написал(а):
Ребят, если не сложно покажите как это должно выглядеть в коде, я в php всеже новичек, потому и пишу в этой ветке:)
Спустя 2 минуты, 48 секунд (20.04.2010 - 17:01) DedMorozzz написал(а):
В смысле за тебя написать решение задачи? Дык тогда точно не та ветка...алгоритм всегда подскажем иль поправим, там, где будет ошибка. Но сделать - ветка работа
Спустя 5 минут, 47 секунд (20.04.2010 - 17:06) Oskar написал(а):
Я не прошу решения, я прошу подсказки ввиде простейшего примера.. Просто очень тяжко обьяснять это гуглу, уже 2 день))
Спустя 11 минут, 55 секунд (20.04.2010 - 17:18) vagrand написал(а):
Хех, дружище, ты даже поленился зарегатся на форуме, а хочешь каких-то кодов чтоб тебе написали.
Спустя 2 минуты, 52 секунды (20.04.2010 - 17:21) Oskar написал(а):
Злые вы) Незарегился потому что сомневался что помогут..думаю так оно и оказалось, чтож и на том спасибо. Удачи!
Спустя 7 минут, 38 секунд (20.04.2010 - 17:29) vagrand написал(а):
Тебе помогли советом.
Спустя 1 час, 31 минута, 39 секунд (20.04.2010 - 19:00) DeeKeiD написал(а):
$res = mysql_query("SELECT * FROM `categories` ORDER BY `id` ASC");
while ($cat = mysql_fetch_array($res))
{
echo $cat['name'];
$res2 = mysql_query("SELECT * FROM `tovari` WHERE `group` = '". $cat['id'] ."' ORDER BY `id` ASC");
while($tovar = mysql_fetch_array($res2))
{
echo $tovar['name'].' '.$tovar['price'];
}
}