仅在本地主机上调用成员函数 query()


Call to a member function query() only on localhost

只有当我尝试连接到我的本地主机时,我才会收到此错误,但是如果我在我的网络主机上进行测试,一切都运行良好。

我得到的错误指向我的$query = $dbh->query("SELECT * FROM video");

<?php
    $query = $dbh->query("SELECT video_img FROM video");
        while($r = $query->fetch(PDO::FETCH_OBJ))   {
            echo $r->video_title;
        }
?>

数据库连接

<?php
$user   =   "root";
$pass   =   "";
try {
    $dbh = new PDO('mysql:host=localhost;dbname=streaming', $user, $pass);
    foreach($dbh->query('SELECT * from video') as $row) {
        //print_r($row);
    }
    $dbh = null;
} catch (PDOException $e) {
    print "Error!: " . $e->getMessage() . "<br/>";
    die();
}
?> 

有什么提示:)吗?

谢谢

查看您发布的代码,$dbh没有意义,因为没有初始化 PDO 连接:

其次,您选择列video_img,然后访问/获取$r->video_title。这也没有意义:

$dbh = new PDO('mysql:host=localhost;dbname=DATABASE_NAME', 'username', 'password');
$query = $dbh->query("SELECT video_img FROM video");
while($r = $query->fetch(PDO::FETCH_OBJ))   {
    echo $r->video_img;
}