一个错误,我只是没有得到,MYSQL PDO PHP

时间:2013-10-13 21:54:31

标签: php mysql sql pdo

尝试运行此插入查询

$query = $pdo->prepare("INSERT INTO `contacts` (`id`, `firstname`, `lastname`, `phonenumber`, `rank`, `time`) VALUES (NULL, :firstname, :lastname, :authcode, '1', NOW()");
$query->execute(array(":firstname" => $firstname, ":lastname" => $lastname, ":phone" => $phone));
$message[1] = '<font color=lime>Successfully added!</font>';

我收到此错误:

  

警告:PDOStatement :: execute()[pdostatement.execute]:SQLSTATE [42000]:语法错误或访问冲突:1064 SQL语法中有错误;查看与MySQL服务器版本对应的手册,以便在第61行的/public_html/contacts/add.php第1行附近使用正确的语法

($query->execute(array...)为第61行

1 个答案:

答案 0 :(得分:3)

您的查询不正确,这就是您收到语法错误的原因。你错过了结尾)

INSERT INTO contacts (
   id,
   firstname,
   lastname,
   phonenumber,
   rank,
   time
) VALUES (
   NULL,
   :firstname,
   :lastname,
   :phone,
   '1',
   NOW()
)

格式化查询后,更容易发现此类错误。