我正在尝试使用php&amp ;;进行菜单子菜单库MySQLi。 我有这张桌子:
我有这个PHP代码:
function my_menu($parent_id=0){
$connection = mysql_connect("localhost","root","root");
mysql_select_db("a_personality",$connection);
$query = mysql_query("SELECT * FROM categories WHERE parent_id = {$parent_id}");
if(mysql_num_rows($query)){
echo "<ul>";
while($res = mysql_fetch_assoc($query)){
echo "<li>";
echo $res['name'];
dispay_menu($res['cat_id']);
echo "</li>";
}
echo "</ul>";
}
}
但是我必须用MySQLi编写它,我这样做了:
function dispay_menu($mysqli_conn,$parent_id=0){
$query = $mysqli_conn->prepare("SELECT cat_id,name,parent_id FROM categories WHERE parent_id = ?");
$query->bind_param('i',$parent_id);
$query->execute();
$query->bind_result($cat_id_db,$name_db,$parent_id_db);
if($query->num_rows){
echo "<ul>";
while($query->fetch()){
echo "<li>";
echo $name_db;
echo "<script>alert('".$parent_id_db."');</script>";
dispay_menu($mysqli_conn,$parent_id_db);
echo "</li>";
}
echo "</ul>";
}
}
使用mysqli的功能我这样称呼: dispay_menu($ mysqli_conn); 问题是我的mysqli功能不起作用,问题是什么?
比你!
答案 0 :(得分:0)
替换
dispay_menu($mysqli_conn,$parent_id_db);
与
dispay_menu($mysqli_conn,$cat_id_db);
目前,您始终使用父ID 0
调用子菜单。