0
我正在创建一个小型评论系统,它显示所有评论。问题是每次按下提交按钮时,数据库中添加的第一行都会被复制。这导致显示大量相同的评论。我已经尝试使用标题和退出,但这也没有解决。它可能是与表单动作有关吗?提前致谢。每次刷新网页时,第一行添加的都是重复的
public function comment($username, $comment)
{
if (!empty($username) && !empty($comment)) {
$date = date("Y-m-d H:i:s");
if ($insert = $this->db->prepare("INSERT INTO reviews (username, comment, time) VALUES (?, ?, ?)")) {
$insert->bind_param('sss', $username, $comment, $date);
$insert->execute();
} else {
echo "something is wrong with the query";
}
} else {
echo "missing fields";
}
}
这里是使用,形式回显低于这个,你可以看到,我重定向到避免重复,然后退出
$reizen = new reizen;
if (isset($_POST['submit'])) {
$username = $_POST['username'];
$comment = $_POST['comment'];
header("Location: index.php?" . $_SERVER['QUERY_STRING']);
$reizen->comment($username, $comment);
exit();
}
echo $reizen->retrieve();
你需要换行 '头:;' 而 '$ reizen->评论($的用户名,$评论);' – Winston 2013-02-24 18:16:17
($ _ SERVER [ 'QUERY_STRING'] “位置的index.php?”。)谢谢,但它仍然重复,更多的想法? – user2031928 2013-02-24 18:26:05
如果它总是发生,你的评论函数会被调用两次,或者你的db有一个重复行的时髦触发器:) – 2013-02-25 20:41:05