[英]PHP/SQL Inserting to DB using form “Error: Column count doesn't match value count at row 1” but can't figure out why count doesn't match
桌列theid父辈yob颜色品种所有者批准
收集信息表格插入数据库
<form method='post' action='nominateasire2.php'>
The ID: <input type='text' name='theid'><br><br>
Sire Name: <input type='text' name='sirename'><br><br>
YOB: <input type='text' name='yob'><br><br>
Color: <input type='text' name='color'><br><br>
Breed: <input type='text' name='breed'><br><br>
Owner: <input type='text' name='owner'><br><br>
<input type='submit' value='Nominate'>
</form>
PHP将信息从表单插入数据库
$sql="INSERT INTO nominatedsires (theid,sirename,yob,color,breed,owner,approved)
VALUES ('$_POST[theid]','$_POST[sirename]','$_POST[yob]',
'$_POST[color]','$_POST[breed]','$_POST[owner]','$_POST[owner]','no')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
echo "1 record added";
使用表格时,出现错误列数与第1行的值数不匹配 。 当我通过PHPmyAdmin并输入数据时,一切正常,因此后端没有错误(值长度/类型/等),我无法弄清楚代码的问题是什么。 任何帮助,不胜感激!
值列表中还有一个额外的列。 $_POST[owner]
在那里两次。
您有两次“ $ _POST [所有者]”。 删除其中之一,您应该没问题。
您之前的代码是:
$sql="INSERT INTO nominatedsires (theid,sirename,yob,color,breed,owner,approved)
VALUES ('$_POST[theid]','$_POST[sirename]','$_POST[yob]',
'$_POST[color]','$_POST[breed]','$_POST[owner]','$_POST[owner]','no')";
这是正确的代码:
$sql="INSERT INTO nominatedsires (theid,sirename,yob,color,breed,owner,approved)
VALUES ('$_POST[theid]','$_POST[sirename]','$_POST[yob]',
'$_POST[color]','$_POST[breed]','$_POST[owner]','no')";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.