2014-01-30 27 views
1

我有一个简单的表单,它将数据插入到我的sqlite数据库中。它在我的本地主机上工作得很好,但是,我没有让我的远程服务器上的插入工作。如果我的execute()从未发生或=== false,我如何获得错误消息?如何从SQLite获取错误消息执行PHP

这里是我的代码:

if (isset($_POST["submit"])) { 
    $email = $_POST["Email"]; 
    $name = $_POST["txt_Name"]; 
    $agency = $_POST["sel_Agency"]; 
    $subagency = $_POST["txt_SubAgency"]; 
    $location = $_POST["txt_Location"]; 

    $params = array(
     ':email' => $email, 
     ':name' => $name, 
     ':agency' => $agency, 
     ':subagency' => $subagency, 
     ':location' => $location 
    ); 

    $stmt = $db->prepare($sql); 

    if ($stmt->execute($params) === FALSE) { 
     //HOW TO SHOW ERROR CODE HERE 
    } 
} 

我试过一个try-catch,但没有得到任何东西。但是,如果我回显“ERROR”,例如,我在屏幕上显示echo ERROR ....我知道它也不能正常工作,因为db没有新行。

任何帮助,将不胜感激。谢谢!

+0

使用'set_error_handler':HTTP:// stackoverflow.com/questions/1241728/can-i-try-catch-a- warning 11206244#11206244 – Goufalite

回答

0

如果使用PDO,以获得最后的错误使用$ DB->的errorCode()来获得埃罗代码和$ DB-> errorInfo中()得到错误信息

+0

这确实是一个解决方案,但对于那些只想使用PHP提供的内置SQlite3的轻型界面的人来说。太糟糕了,文档对于这样的特定需求是无效的...... – Goufalite