Тема: Не можу зрозуміти чому не працює запит до БД.
Привіт.
Вирішив написати у навчальних цілях скрипт виводу категорій і субкатегорій необмеженої вкладеності.
Ніби все просто, але...
Одним словом, щось не так з запитом до mysql або з само функцією(хоча коли забрати запит і поставити щось інше то все працює)
При запуску скрипта, виводить тільки головні категорії, а субкатегорії нехоче.
Сам скрипт:
P.S: за форматування коду та назви змінних не судіть, оскільки код писав на скору руку.
<html>
<head>
<meta charset="utf8"/>
</head>
<body>
<?php
ini_set('display_errors',1);
 $db = new mysqli('localhost','root','','testDB') or die(mysql_errno());
 $db->query("SET NAMES utf8");
 $primeCategory = $db->query("SELECT * FROM category WHERE home_category = 0");
 
  function subCategory($idCategory)
  {
  $subCat = $db->query("SELECT * FROM category WHERE home_category = ".$idCategory."");
  
  if($subCat->num_rows == 0)
   return 0;
   
   
  for($i2 = 0; $i2 < $subCat->num_rows; $i2++)
  {
   $str1 = $subCat->fetch_object();
   echo $str1->name.'<br>'; 
  }
 
  //echo subCategory($idCategory+1);
  }
 
 for($i = 0; $i < $primeCategory->num_rows; $i++)
 {
 $str = $primeCategory->fetch_object();
 echo $str->name.'<br>'; 
 echo subCategory($str->id);
 }
 
?> 
</body>
</html> SQL:
CREATE TABLE IF NOT EXISTS `category` (
  `id` int(3) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `description` varchar(255) NOT NULL,
  `home_category` int(2) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
--
-- Дамп даних таблиці `category`
--
INSERT INTO `category` (`id`, `name`, `description`, `home_category`) VALUES
(1, 'Програмування', 'Збірка сайтів і блогів які присв`ячені програмуванню', 0),
(2, 'PHP', 'Для php програмістів', 1),
(3, 'Фреймворки', 'Фреймворки', 2);