try{
$dsn = "mysql:host=localhost;dbname=db_upan";
$db = new PDO($dsn,"root","");
$sql = "select * form tb_uptype";
$statement = $db->query($sql);
while($result = $statement->fetch(PDO::FETCH_ASSOC )){
echo $result['genrename'];
}
$db = null;
    }catch (PDOException $e){
echo "发生错误。";
}
代码如上:  运行的时候提示错误Fatal error: Call to a member function fetch() on a non-object in C:\xampp\htdocs\upan\test.php on line 7;
请问这是什么原因啊? 坐等

解决方案 »

  1.   

    $sql = "select * from tb_uptype";
      

  2.   

    $sql = "select * form tb_uptype";
    应为
    $sql = "select * from tb_uptype";sql 指令错了,自然后继代码也要出错
      

  3.   

    Call to a member function fetch() on a non-object 
    用对象调用的方式调用了函数fetch  但是你给的 $statement php认为他不是一个对象 不可用$statement->fetch() 这种方式。
    那么你就var_dump($statement); 
    看一下你从数据库取得数据对不对。
    根据这个你就能知道错误出在哪儿了。