php-pdo-op-fetch数据不起作用


php pdo oop fetch data not working

类PHP

<?php
    class product extends db {
        function viewCat(){
            $dbcon = new db();
            $connn = $dbcon->dbcon();
            try {
                $stmt = $connn->prepare("SELECT * FROM `cat`");
                $resultcat = $stmt->execute();
                return $resultcat;
            } catch (PDOException $e) {
                echo 'Error: ' . $e->getMessage();
            }
        }  
    }
    ?>

视图

<?php
$menu = new product();
$resultmenux = $menu->viewCat();

    foreach ($resultcatx as $row) {
        print_r($row);
    }
?>

我得到的错误是

警告:为foreach()提供的参数无效

在您的类文件中,它应该是,正如我所评论的,您没有获取数据

$stmt = $connn->prepare("SELECT * FROM `cat`");
$stmt->execute();
$resultcat = $stml->fetchAll(PDO::FETCH_ASSOC); // this line was missing
return $resultcat;

和shankhan 回答的视图文件

$resultmenux = $menu->viewCat();    
foreach ($resultmenux as $row) {
    print_r($row);
}

应该是这样的:

$resultmenux = $menu->viewCat();

foreach ($resultmenux as $row) {
    print_r($row);
}