尝试将POST数据作为新记录插入到mysql数据库中。表有5列:PHP MYSQL列数不匹配
ContractorID,名字,姓氏,电子邮件,密码
$insert = "INSERT INTO CONTRACTOR (firstName, lastName, email, password)
VALUES ($firstName, $lastName, $email, $password)";
if (mysqli_query($conn, $insert)) {
echo "New record created successfully";
} else {
echo "Error: " . $insert . "<br>" . mysqli_error($conn);
}
ContractorID是一个自动递增的主键,所以我想我可以把它关闭插件。然而,即使我更改为:
$insert = "INSERT INTO CONTRACTOR (ContractorID, firstName, lastName, email, password)
VALUES ('DEFAULT', '$firstName', '$lastName', '$email', '$password')";
我得到了同样的错误:
错误:INSERT INTO承包商(名字,姓氏,电子邮件,密码)VALUES( 'w4rwsfsdf', 'wqerwerw',' ) 列数不匹配第1行的值计数
编辑:这是一个缺少逗号导致的问题,我错误地复制了代码错误在这里和错误消息正确。无法将Linux复制并粘贴到Windows。
@JayBlanchard请看下面;) – 2014-12-02 19:32:22
不使用'DEFAULT',使用NULL。 – touchmx 2014-12-02 19:35:13
您的代码与您的错误不符。您的错误显示您在电子邮件和密码值之间缺少逗号。请养成应对和粘贴您使用/看到的确切代码和错误的习惯。 – 2014-12-02 19:40:02