DenUs
Новичок
Прайс с неизвестным уровнем вложений
Имеются две таблицы MySQL:
группы прайса
|уровень вложения |ид группы|название|
и собственно таблица с товаром, у каждого товара ссылка на название группы...
В каждой группе имеются подгруппы у которых, в свою очередь, тоже могут быть подгруппы.Ууровень вложений заранее неизвестен. Получается эдакая древовидная структура
Все к чему я пришёл, сводится к множеству запросов к БД типа такого:
и так далее...
Но поскольку, как я говорил, уровней вложений может быть сколько угодно, код получается громоздкий и неэффективный. Я уже излазил весь форум, но ничего подходящего не нашёл (хотя может не там искал)
Подскажите хотя бы в каком направлении думать.
Имеются две таблицы MySQL:
группы прайса
|уровень вложения |ид группы|название|
и собственно таблица с товаром, у каждого товара ссылка на название группы...
В каждой группе имеются подгруппы у которых, в свою очередь, тоже могут быть подгруппы.Ууровень вложений заранее неизвестен. Получается эдакая древовидная структура
Все к чему я пришёл, сводится к множеству запросов к БД типа такого:
PHP:
$query = mysql_query("SELECT * FROM price_group WHERE group_id='0'");
while ($result = mysql_fetch_array($query))
{
echo "<tr><td align=center><b>".$result['name']."<b></td></tr>";
$tov_q = mysql_query("SELECT * FROM price WHERE group_id='".$result['name']."' ");
while ($tov_r = mysql_fetch_array($tov_q))
{
echo "<tr><td bgcolor=#ffffff>".$tov_r['name']."</td>";
}
$q1 = mysql_query("SELECT * FROM price_group WHERE group_id='".$result['name']."'");
while ($r1 = mysql_fetch_array($q1))
{
echo "<tr><td colspan=7 bgcolor=#ffffff>".$r1['name']."</td></tr>";
$tov_q1 = mysql_query("SELECT * FROM price WHERE group_id='".$r1['name']."' AND p1>0");
while ($tov_r1 = mysql_fetch_array($tov_q1))
{
echo "<tr><td bgcolor=#ffffff>".$tov_r1['name']."</td></tr>";
}
}
}
Но поскольку, как я говорил, уровней вложений может быть сколько угодно, код получается громоздкий и неэффективный. Я уже излазил весь форум, но ничего подходящего не нашёл (хотя может не там искал)
Подскажите хотя бы в каком направлении думать.