简体   繁体   English

PHP的PDO错误处理难度

[英]php pdo error handling difficulty

I am using firebug to see what is being returned with JSON and i get this array 我正在使用萤火虫查看JSON返回了什么,我得到了这个数组

 Array
(
    [0] => 00000
)

With Mysql i could simple do or die(mysql_error()) . 使用Mysql我可以简单地做到or die(mysql_error())

Here is my query, I just changed it from mysql to prepared statement and now it isn't working. 这是我的查询,我只是将其从mysql更改为prepared语句,现在不起作用。

        $construct =  $connectdb->prepare("SELECT rate.voted as rvote, child.*, sub.actionid as usersub, child.position as cnid FROM `table1` child 
        LEFT JOIN vote rate on rate.userid=:userid AND child.id=rate.blockid
        LEFT JOIN subscribe sub on sub.actionid=child.id AND sub.userid=:userid
        WHERE child.sid=:id AND child.position=:clickedposition
        ORDER BY cnid DESC,cid DESC $finalquerylimit");         

        $construct->execute(array(':userid'=>$userid,':id'=>$id,':clickedposition'=>$clickedposition));

This is what i used to get the error 这就是我以前得到的错误

print_r($construct->errorInfo());

I know the query isn't wrong because it works in MySql? 我知道查询没错,因为它可以在MySql中使用? any idea? 任何想法?

00000错误代码表示该语句已成功执行。

The execute statement returns TRUE/FALSE value upon executing the query. 执行语句在执行查询时返回TRUE / FALSE值。 So, if it returned FALSE, you could show the db error to the user(or log it somewhere). 因此,如果返回FALSE,则可以向用户显示db错误(或将其记录在某处)。 Otherwise, if it is TRUE, the query was executed successfully. 否则,如果为TRUE,则查询已成功执行。

For reference: PDO Execute Statement 供参考: PDO执行语句

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM