【发布时间】:2014-01-08 23:44:28
【问题描述】:
我的网站上有一个工作表单,它成功地将字段插入到 MySQL 数据库表中。我添加了一个新表,基本上复制了新表单的现有代码,但出现错误。我已经对它进行了很多调整,感到困惑。
这是表格:
<form action="contact.php" method="post">
<input type="hidden" name="submitted" value="true" />
<fieldset>
<label>First Name: <input type="text" name="firstname" required="" /> </label><br />
<label>Last Name: <input type="text" name="lastname" required /> </label><br />
<label>Email Address: <input type="text" name="email" required /> </label><br />
<label>Anniversary Date: <input type="date" name="weddingdate" /> </label><br />
<label>Birthday: <input type="date" name="birthday" /> </label><br />
<label>Business Name: <input type="text" name="business" /> </label><br />
<label>Are You A Chamber Member?: <input type="radio" name="chamber" value="memyes">Yes <input type="radio" name="chamber" value="memno"> No<br />
<label>Comments: <input type="textarea" name="comments" rows="2" cols="50"> </label>
</fieldset>
<input type="submit" value="Enter Me In The Contest!" />
</form>
contact.php 文件如下所示:
if (isset($_POST['submitted'])) {
include('dbconnect.php');
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$email = $_POST['email'];
$weddingdate = $_POST['weddingdate'];
$birthday = $_POST['birthday'];
$business = $_POST['business'];
$chamber = $_POST['chamber'];
$comments = $_POST['comments'];
$sqlinsert = "INSERT INTO contest (`firstname`, `lastname`, `email`, `weddingdate`, `birthday`,`business`, 'chamber', 'comments') VALUES ('$firstname', '$lastname', '$email', '$weddingdate', '$birthday', '$business', '$chamber', '$comments')";
if (!mysqli_query($dbcon, $sqlinsert)) {
die('Error adding to database');
}
header('Location: website omitted');
}
我知道它连接正确,我为两者使用相同的连接脚本,并添加了连接回显消息对连接进行了测试。
我使用这个脚本得到的只是“添加到数据库时出错”消息...
提前感谢您的建议和帮助!
【问题讨论】:
-
@skrilled,而不是 snark,尝试教育用户他做错了什么。
-
@castis 我希望我能多次点赞评论。我真的不喜欢“我是编程之神,所有知道得更少的人都应该得到更糟”的人
-
mysqli_error 告诉你什么?
-
castis:我已经厌倦了在这个网站上每 5 分钟输入一次“清理您的数据库输入”。我们是否假设 OP 不知道如何谷歌?小鲍比桌 = 谷歌上的第一个结果。
-
另外,您引用了您的两个 (
INSERT into) 列'chamber', 'comments',这应该是反引号,就像您为其他列所做的一样。