【发布时间】:2015-10-06 19:24:55
【问题描述】:
我有这个 SQL 查询
$sql = $conn->prepare('INSERT INTO Accounts (Status, Username, Password, FirstName, LastName, EmailAddress, API_Status, API_Key, About) VALUES (:Status, :Username, :Password, :FirstName, :LastName, :EmailAddress, :API_Status, API_Key, :About)');
$sql->execute(array('Status' => 'NotActive', 'Username' => $Username, 'Password' => $PasswordHash, 'FirstName' => $FirstName, 'LastName' => $LastName, 'EmailAddress' => $EmailAddress, 'API_Status' => 'OFF', 'API_Key' => $API_Key, 'About' => $Other));
执行此查询时,我使用的是try { 和
catch(PDOException $e) {
echo $sql . "<br>" . $e->getMessage();
}
现在当我运行脚本时,我得到了这个 PHP 错误:
可捕获的致命错误:不能是 PDOStatement 类的对象 在第 94 行的 /var/www/html/register.php 中转换为字符串
我该如何解决这个问题?
【问题讨论】:
-
当 $sql 是一个对象时不要使用 echo $sql
-
执行类似 echo 'INSERT INTO.........' 并在 phpmyadmin 上测试
-
那么...
/var/www/html/register.php on line 94是哪一行?