【发布时间】:2009-09-30 03:05:22
【问题描述】:
我刚刚开始学习有关 PDO 和准备好的语句(这肯定比记住每次都使用 mysql_real_escape_string() 好),但我无法让脚本正确执行:
<?php
error_reporting(E_ALL);
echo "start";
try{
$dbh=new PDO('mysql:host=localhost;dbname=DBNAME','USER','PWD');
}
catch(PDOException $e){
echo 'Error connecting to MySQL!: '.$e->getMessage();
exit();
}
$dbh->prepare('SELECT * FROM users WHERE uid= ?');
$dbh->execute(array('15400743'));
$result=$dbh->fetchAll();
print_r($result);
echo "end";
?>
这几乎是从示例代码中复制而来的,但执行时只返回“start”。我已经仔细检查了我的 db/user/pw。人们还有什么看错的吗?谢谢!
【问题讨论】:
-
您可能想要设置
$dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );。否则你必须检查每个被调用方法的返回值。