今天和大家分享如何调试PDO,因为我也是PHP的初学者,可能这个问题对一些PHP大牛来说特别简单,因此对于大多数专家可以跳过该文章了。
我在使用PDO中,在windows目录下的pdo extensions都已经启用了,利用phpinfo()也看到PHP当前支持利用PDO连接MYSQL,当我使用如下代码连接时,出现问题浏览器返回HTTP 500的错误,APACHE日志中没有记录与该错误相关信息,代码如下:
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO("mysql:host=localhost;dbname=webclass;port=3305", 'root', 'root',$pdo_options);
我的数据库是MYSQL5.1,PHP是5.3.8,平台环境是windows xp sp2(我自己的本本),按理来说以上代码是正确的,但是返回HTTP500。
调试方法:
try{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO("mysql:host=localhost;dbname=webclass;port=3305", 'root', 'root');
}catch(PDOException $e){
print "error".$e->getMessage()."</br>";
die();
}
这样就可以得到错误信息了!修改方法:
去掉PDO初始化中的端口信息,即port=3305
$bdd = new PDO("mysql:host=localhost;dbname=webclass", 'root', 'root',$pdo_options);
这样就行了!