列数与第1行的值计数不匹配,任何建议[关闭]
问题描述:
I'm getting an error using PHP and MySQL for inserting a query from a form into a databse. The error is
Column count doesn't match value count at row 1
$sql = "INSERT INTO Jobs (
JobSubject,
JobCompany,
JobSalary,
JobLocation,
JobDate,
JobCat,
JobPostBy
) VALUES (
'" . mysql_real_escape_string($_POST['JobSubject']) . "',
" . mysql_real_escape_string($_POST['JobCompany']) .",
" . mysql_real_escape_string($_POST['JobSalary']) .",
" . mysql_real_escape_string($_POST['JobLocation']) .",
NOW(),
" . mysql_real_escape_string($_POST['JobCat']) . ",
" . $_SESSION['userId'] . "
)";
我使用PHP和MySQL将错误从表单插入到数据库中时出错。 错误是 p>
列数与第1行的值计数不匹配 p> blockquote>
$ sql =“INSERT INTO Jobs( JobSubject, JobCompany, JobSalary, JobLocation, JobDate, JobCat, JobPostBy )VALUES( '”。mysql_real_escape_string($ _ POST [ 'JobSubject'])。“', ”。mysql_real_escape_string($ _ POST ['JobCompany'])。“, ”。mysql_real_escape_string($ _ POST ['JobSalary'])。“, ”。mysql_real_escape_string($ _POST ['JobLocation'])。“, NOW(), ”。mysql_real_escape_string($ _ POST ['JobCat'])。“, ”。$ _SESSION ['userId']。“ )” ; code> pre> div>
答
You are missing some single quotes.
Here's the correct syntax:
$sql = "
INSERT INTO Jobs (
JobSubject,
JobCompany,
JobSalary,
JobLocation,
JobDate,
JobCat,
JobPostBy
)
VALUES(
'" . mysql_real_escape_string($_POST['JobSubject']) . "',
'" . mysql_real_escape_string($_POST['JobCompany']) . "',
'" . mysql_real_escape_string($_POST['JobSalary']) . "',
'" . mysql_real_escape_string($_POST['JobLocation']) . "',
NOW(),
'" . mysql_real_escape_string($_POST['JobCat']) . "',
'" . $_SESSION['userId'] . "'
)
";