我现在已经和这个问题争斗了大约2个月,但我还是找不到解决办法。
我是PHP / MYSQL的新手,所以请保持轻松/耐心。
基本上,我有一个名为“browse.php”的页面 - 此页面有一个查询,它从表中选择*并列出AS A TREE类别。
我实际需要做的是仅列出父级为“0”的类别。
当点击其中一个类别时,它会带你到一个新页面(让我们调用这个页面browse2.php),然后只列出“CATID点击browse.php”的父级的类别
MYSQL DB:
CREATE TABLE `categories_docs` (
`CATID` bigint(20) NOT NULL AUTO_INCREMENT,
`name` varchar(120) NOT NULL DEFAULT '',
`parent` bigint(20) NOT NULL DEFAULT '0',
PRIMARY KEY (`CATID`),
UNIQUE KEY `name` (`name`)
) ENGINE=MyISAM AUTO_INCREMENT=22 DEFAULT CHARSET=utf8
BROWSE.php:
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
function display_children($parent) {
$result = mysql_query('SELECT * FROM categories_docs '.
'WHERE parent="'.$parent.'";');
// display each child
echo "<ul>";
while ($row = mysql_fetch_array($result)) {
echo "<li class='child'><a href='browse2.php?cat=".$row['CATID']."'>".$row['name']."</a></li>";
}
echo "</ul>";
}
$result = mysql_query('SELECT * FROM categories_docs WHERE parent= 0');
echo "<div id='cat_cont' >";
while ($row = mysql_fetch_array($result)) {
echo "<div class='parent' align='left'><a href='ads.php?cat=".$row['CATID']."' >".$row['name']."</a></div>";
}
echo "</div>";
?>
我真的很期待你们中的一位大师能够帮助我。
提前致谢!
答案 0 :(得分:0)
首先,您应该使用PDO或mysqli命令,使用mysql查询现在并不是真正的“良好做法”。
至于你的问题: 仅用于获取父类别:
SELECT * from categories_docs WHERE parent=0
在您的“子”页面中:
SELECT * from categories_docs WHERE parent=$parentID