Вывод навигационной статус-строчки, проблема

galiant

Новичок
Вывод навигационной статус-строчки, проблема

Друзья!

Есть база данных категорий товара (mysql). Таблица "cats" с полями:

cat_id, cat_name, cat_parent. Если cat_parent=0 то категория главная.

Есть функция, которая должна получать id категории и выдавать по цепочке список её родителей. По итогам будет это выглядеть как и везде.... например:
Вы находитесь: Оборудование -> Электрическое -> Дрели

вот функция. Она не выводит ничего, я уже 2 часа ищу ошибку, не могу найти :( Видимо я чего-то не знаю, я пока новичек в Php.. Подскажите куда копать, пожалуйста :/

PHP:
function CatString($cat_num, $prev) {
global $DB_HOST;
global $DB_USER;
global $DB_PASS;
global $DB_NAME;

$conn = mysql_connect($DB_HOST,$DB_USER,$DB_PASS) or die (mysql_error());
mysql_select_db($DB_NAME) or die (mysql_error());

$ret="";

$q = "SELECT * FROM cats WHERE cat_id = $cat_num";
$result=mysql_query($q, $conn);
$row=mysql_fetch_array($result);

if ($row['cat_parent'] != 0) {
$ret.="->".$row['cat_name'].$prev;

CatString($row['cat_parent'],$ret); // зовем родителя

} else {
mysql_close($conn);
return($ret);
}

}
Такое впечатление что функция не вызывается сама из себя.
Потому как переменные ей передаются... Может быть ответ на поверхности но я уже не могу больше его искать, отчаялся :( Очень надеюсь на помощь
 

white phoenix

Новичок
1. соеденяйся с базой вне функции, внутри это дурной тон.
2. у тебя ошибка в функции. почитай про nested sets.
Panchous
> УЖАС!
летящий на крыльях ночи.

-~{}~ 14.12.05 16:17:

http://phpclub.ru/faq/wakka.php?wakka=Tree/Ns&v=17st
 

whirlwind

TDD infected, paranoid
Прежде всего mysql_connect, mysql_close и сопутствующее вынести из функции
 

galiant

Новичок
Panchous
Это слово пишется через букву "О".

white phoenix
спасибо, попробую
 

white phoenix

Новичок
Panchous
он имел в виду слово "УЖАС" + "О" = "УЖОС".
galiant
чего пробовать ;) надо читать
 

galiant

Новичок
white phoenix
Нет ну а я и не спорю. Обязательно прочту и никогда больше не буду писать соединения с базой внутри функции...
Спасибо за помощь ;)
 
Сверху