PHP PDO库

PHP PDO库,php,mysql,pdo,Php,Mysql,Pdo,我有以下代码: <?php require_once('./include/database.php'); error_reporting(E_ALL); $sth = $dbh->prepare('SELECT * FROM category_home WHERE parentid = 0'); $sth->execute(); while ($cat = $sth->fetch(PDO::FETCH_ASSOC)) { $sth2 = $dbh->p

我有以下代码:

<?php

require_once('./include/database.php');
error_reporting(E_ALL);
$sth = $dbh->prepare('SELECT * FROM category_home WHERE parentid = 0');
$sth->execute();

while ($cat = $sth->fetch(PDO::FETCH_ASSOC))
{
    $sth2 = $dbh->prepare('SELECT * FROM category_home WHERE parentid = :parentid');
    $sth2->bindValue(':parentid', $cat['categoryid']);
    $sth2->execute();

    print '<strong>' . htmlspecialchars_uni($cat['name']) . '</strong><br />';
    while ($subcat = $sth2->fetch(PDO::FETCH_ASSOC))
    {
        print '- ' . htmlspecialchars_uni($subcat['name']) . '<br />';
    }
}

?>

当我运行它时,主要类别的列表被输出到屏幕上,但子类别仅为第一个类别输出

看起来我做错什么了吗


谢谢。

您在db中有相应的子类别吗?请尝试
$sth2->closeCursor()