dadesign
Guest
Рекурсивная ф-ция: не могу сделать return
Накатал такого монстра, странно, но работает:
но мне нкжно не echo $rowq['category_id']; , а return $rowq['category_id'];
- как сделать... не могу понять
Суть ф-ции: пробежатся от id наверх по иерархии дерева каталогов и остановится в том месте, где rowq['category_id'] чему-то равен (шаблоны при построении товарного каталога)
Накатал такого монстра, странно, но работает:
PHP:
function patternid($id){
$q = "select * from category where id=$id";
$res = mysql_query($q) or die("query failed: ".mysql_error());
while($row = mysql_fetch_array($res)) {
$qq = "select * from patterns where category_id=".$row['parent_id'];
$resq = mysql_query($qq) or die("query failed: ".mysql_error());
$rowq = mysql_fetch_array($resq);
if (@$rowq['category_id']) {
echo $rowq['category_id'];
}
else patternid($row['parent_id']);
}
}
patternid($id);
но мне нкжно не echo $rowq['category_id']; , а return $rowq['category_id'];
- как сделать... не могу понять

Суть ф-ции: пробежатся от id наверх по иерархии дерева каталогов и остановится в том месте, где rowq['category_id'] чему-то равен (шаблоны при построении товарного каталога)