У меня такая задача, которую никак не получается решить. Есть таблица списка коренных категорий вмести с дочерними категориями. А также есть таблица объявлений, которые связываются с таблицей категорий. Нужно чтобы мы смогли соединиться к 2 таблицам и подсчитать объявления, которые относятся и коренным и дочерним категориям и вывести количество (например, авто(49). В авто имеются скажем 3 подкатегорий, в которых хранятся объявления, а в самом коренном категории авто нет объявлений, а только подкатегории, в которых хранятся объявления. Необходимо, чтобы мы смогли подсчитать сколько объявлений в дочерних категориях и вывести их количество рядом с коренной категорией). Ниже приведен код, в котором никак не могу добиться ожидаемого результата. Прошу вас помочь с решением данного вопроса. Заранее спасибо.
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?
- $GLOBALS['cccount'] = 0;
- if (defined('JBCITY')) $GLOBALS['subQuery'] = ' AND city_id = '.JBCITY; else $GLOBALS['subQuery'] = '';
- function listcat2($id,$sub){
- $categories = mysql_query("SELECT id, child_category, name_cat, en_name_cat FROM jb_board_cat WHERE root_category = $id ORDER by sort_index"); cq();
- $count_ads = mysql_result(mysql_query("SELECT COUNT(id) from jb_board WHERE id_category='".$category['id']."' AND old_mess='old'".$GLOBALS['subQuery']), 0);cq();
- //if($sub=="2") $subclass="class=\"subclass\"";else $subclass="";
- echo "(".$count_ads.")";
- $GLOBALS['cccount'] = $GLOBALS['cccount'] + $count_ads;
- if($category['child_category']==1){listcat2($category['id'],$sub+1);}
- }
- }
- $categories = mysql_query("SELECT id, root_category, child_category, name_cat,en_name_cat,img FROM jb_board_cat WHERE root_category=0 ORDER by sort_index"); cq();
- echo "<div style=\"float:left;width:50%;\" class=\"index_cat gray sm\">";
- echo (@$category['img'])?"<img alt=\"".$name_cat."\" class=\"rootcatimg\" src=\"".$u."cat/".$category['img']."\" />":"";
- $lastres = mysql_query("SELECT COUNT(id) FROM `jb_board` WHERE `id_category` IN (SELECT `id` FROM `jb_board_cat` WHERE `root_category` = $id)");
- echo "<a class=\"rootcat\" href=\"c".$category['id'].".html\">".$name_cat."</a> (".$lastres.") ";
- $td++;if($td>=$count_field){echo "</div><div style=\"float:right;width:50%;\" class=\"index_cat gray sm\">";$td=0;}
- }
- echo "</div><div class=\"clear\"></div>";
- ?>