【问题标题】:Inserting row into MYSQL table with PDO doens't work使用 PDO 将行插入 MYSQL 表不起作用
【发布时间】:2014-01-13 15:44:03
【问题描述】:

当我尝试使用 PDO 向 MYSQL 表中插入一行时,它似乎不起作用。我没有收到错误消息,但根本没有添加该行。这是我的代码:

$hostname = "localhost";
$database = "website";
$username = "leon";
$password = "*censored*";
$connect = new PDO("mysql:host=$hostname; dbname=$database; charset=utf8", $username, $password) or die("Can't connect!");
$sql = "INSERT INTO members(email, password, gender, firstname, middlename, lastname, zipcode, address, residence, telephone, activation)VALUES(:email, :encryptedpassword, :gender, :firstname, :middlename, :lastname, :zipcode, :address, :residence. :telephone, :activation)";
$register_user=$connect->prepare($sql);
$register_user->execute(array(':email'=>$email,
                  ':encryptedpassword'=>$encryptedpassword,
                  ':gender'=>$gender,
                  ':firstname'=>$firstname,
                  ':middlename'=>$middlename,
                  ':lastname'=>$lastname,
                  ':zipcode'=>$zipcode,
                  ':address'=>$address,
                  ':residence'=>$residence,
                  ':telephone'=>$telephone,                   
                  ':activation'=>$activation));

任何帮助将不胜感激!

【问题讨论】:

  • 您是否尝试过获取错误信息? echo $register_user->errorInfo();
  • 您的表是否有一个唯一键,您正在使用此查询进行复制?
  • @Kay Nelson 是的。 $register_user->execute(

标签: mysql pdo insert row


【解决方案1】:

这里:

VALUES(:email, :encryptedpassword, :gender, :firstname, :middlename, :lastname, :zipcode, :address, :residence. :telephone, :activation)";

:residence. 后面有一个点,而不是逗号 :residence,

【讨论】:

  • 哇,我现在真的很傻。不敢相信我忽略了这一点。非常感谢伙计!
猜你喜欢
  • 2013-08-06
  • 1970-01-01
  • 2015-09-14
  • 1970-01-01
  • 2014-08-08
  • 1970-01-01
  • 2013-10-17
  • 2013-07-10
相关资源
最近更新 更多