0

我的问题是我从我的 pdo 插入中得到一个 4200 错误代码。在我的计算机上,当我使用 XAMPP 时它运行良好(没有错误),但是当我将它移植到服务器上时,我得到了这个错误。有人可以启发我或指出我得到答案的方向。谢谢。

 $add_nonce = $db->con->prepare("INSERT INTO nonces(nonce, issue_date, `used`) VALUES(:nonce, :issue_date, '0')");
        $add_nonce->bindParam(':nonce', $nonce, PDO::PARAM_STR);
        $issue_date = time();
        $add_nonce->bindParam(':issue_date', $issue_date, PDO::PARAM_INT);
    $add_nonce->execute();
    Log_String("test", $add_nonce->errorCode());
    $nonce_id = $db->con->lastInsertId();
    return $nonce;
4

1 回答 1

1

您必须告诉 PDO 抛出异常,而不是只记录错误代码,其中还包含完整的错误消息。

$db->con->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );

而不是自制的 Log_String() 函数,您必须告诉 PHP 默认情况下记录所有错误,使用log_errorserror_logini 指令。

或者,如果在开发服务器上,只需打开display_errors

你会立即知道出了什么问题。

于 2013-02-06T10:37:48.883 回答