![]() |
Показаны 1 сообщений на этой странице |
Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- PHP (http://netadmin.ws/forum/forumdisplay.php?forumid=6)
-- Рекурсия. (http://netadmin.ws/forum/showthread.php?threadid=8613)
Рекурсия.
чета неправильно работает.. лишний раз цикл пробегается.. поправьте плиз!
#
# Структура таблицы `category`
#
CREATE TABLE `category` (
`ElementID` int(3) unsigned NOT NULL auto_increment,
`ParentID` int(3) unsigned default '0',
`ElementName` varchar(150) default NULL,
PRIMARY KEY (`ElementID`)
) TYPE=MyISAM AUTO_INCREMENT=14 ;
#
# Дамп данных таблицы `category`
#
INSERT INTO `category` VALUES (1, 0, 'Машины');
INSERT INTO `category` VALUES (2, 1, 'Лада');
INSERT INTO `category` VALUES (3, 2, 'модель 12.01');
INSERT INTO `category` VALUES (4, 1, 'Ваз');
INSERT INTO `category` VALUES (5, 4, '21,06');
INSERT INTO `category` VALUES (6, 4, '21,7');
INSERT INTO `category` VALUES (7, 0, 'Стиралки');
INSERT INTO `category` VALUES (8, 7, 'АЕГ');
INSERT INTO `category` VALUES (9, 8, 'Мега стиралка');
INSERT INTO `category` VALUES (10, 7, 'Бош');
<?
function getchildren($id) {
$q = "SELECT * FROM category WHERE ParentID = $id";
echo $q."<br>";
$q = mysql_query($q);
if(sizeOf(mysql_num_rows($q))>0){
$html .= "<ul>";
while($row = mysql_fetch_array($q)) {
$html .= "<li>";
$html .= $row[ElementName] ;
$html .= "</li>";
// $qw = "SELECT * FROM category WHERE ParentID = $row[ElementID]";
// echo $qw."<br>";
$qw = mysql_num_rows($q);
if(sizeOf($qw) > 0) {
$html .= getchildren($row[ElementID]);
}
}
$html .= "</ul>";
}
return $html;
}
echo getchildren(0);
?>
<? if(sizeOf(mysql_num_rows($q))>0) ?>{
| Формат времени GMT. Текущее время 12:56. | Показаны 1 сообщений на этой странице |
Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.