1

所以我为我的博客写了一篇评论文章,但它似乎没有插入数据。这是表格:

<form action='' method='post' name='postComment'>
<label for='name'>Name:</label><br/><input type='text' id='name' name='name''/><br/>
<label for='comment'>Comment:</label><br/><input type='text' id='comment' name='comment' />
<br/><input type='submit' value='Post' name='postComment'/></form></div>

表单在页面顶部的同一页面上处理。我使用与博客文章本身相同的方式插入数据,所以我知道它有效。我还使用 phpMyAdmin 测试了 SQL(显然删除了占位符)

if(!empty($_POST['postComment']))
{
    $date = date("d/m/y g:i:A");
    $name = clean(mysqli_real_escape_string($db, $_POST['name']));
    $comment = clean(mysqli_real_escape_string($db, $_POST['comment']));
    if ($stmt = $db->prepare("INSERT INTO `comments` (`name`, `comment`, `entry`, `date`) values (?, ?, ?, ?)")) {
        $stmt->bind_param('ssis', $name, $comment, $_GET['id'], $date);
        $stmt->execute();
        $stmt->close();
    }
}

任何帮助将不胜感激,我已经为这个问题挠了一天。

4

3 回答 3

1

可能还需要清理数据,以便在输入时加上引号。如果您查看您的查询,您可能会看到日期没有像字符串一样输入,它应该是。

于 2013-07-25T18:40:42.327 回答
0

解决了,谢谢大家的帮助。出于某种原因,即使我在制作表格时设置了 ID,phpMyAdmin 也没有将 ID 设置为自动增量。一个简单的sql查询就解决了。

ALTER TABLE comments MODIFY id int NOT NULL AUTO_INCREMENT;
于 2013-07-25T19:42:55.853 回答
-1

你的表单 action='' 是空白的,所以它不会去任何地方。

于 2013-07-25T18:45:36.640 回答