我不斷收到此錯誤:添加一個自動遞增領域到MySQL在PHP
INSERT失敗:INSERT INTO clientcontact VALUES( '唐·瓊斯', '沃爾瑪', '需要幫助',「唐@ icsbranch。 '772-991-0122') 列數不匹配第1行的值計數
我想從get_post函數,這是一個自動增量ID字段傳遞一個NULL字段。只是想知道我需要更改什麼,以便用戶可以填寫表單並使用自動填充了inquiryID的信息將數據輸入到數據庫中。
<?php
require_once 'login.php';
$db_server = mysql_connect($db_hostname, $db_username, $db_password);
if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());
mysql_select_db($db_database, $db_server)
or die("Unable to select database: " . mysql_error());
{
$name = get_post('name');
$company = get_post('company');
$description = get_post('description');
$email = get_post('email');
$phone = get_post('phone');
$inquiryID = get_post('inquiryID');
$query = "INSERT INTO clientcontact VALUES" .
"('$name', '$company', '$description', '$email', '$phone', NULL)";
if (!mysql_query($query, $db_server))
echo "INSERT failed: $query<br />" .
mysql_error() . "<br /><br />";
}
echo <<<_END
<form action="index.php" method="post"><pre>
Name: <input type="text" name="name" />
Company: <input type="text" name="company" />
Inquiry Details: <input type="text" name="description" />
E-Mail: <input type="text" name="email" />
Phone Number: <input type="text" name="phone" />
<input type="submit" value="ADD RECORD" />
</pre></form>
_END;
mysql_close($db_server);
function get_post($var)
{
return mysql_real_escape_string($_POST[$var]);
}
?>
顯示您的表格架構。 – djdy
你真的應該使用列列表。 'INSERT INTO clientcontact(name,company,description,email,phone,id)VALUES(...你所有的變量...)'確保你沒有省略一列因爲沒有列表,你必須按照正確的順序爲每一列提供一個值。 –
如果id是auto_increment,你不應該插入值NULL。至少如果它的關鍵。 – Class