jquery 如何让新发表的评论显示在同一页没有页面刷新[重复]

x7rlezfr  于 2023-06-22  发布在  jQuery
关注(0)|答案(1)|浏览(115)

此问题已在此处有答案

header location not redirecting after form submit(1个答案)
11天前关闭
一个相当复杂的场景。博客脚本post.php,有一个表单来提交评论文章标题,被点击并显示给用户。这是脚本的表单部分:

$id = (int) $_GET['id']; //at beginning of script - obtained from title clicked on by user

        <form action="post.php?id=<?php echo $id; ?>" method="post">
<?php
    if ($logged == 'No') {
        $guest = 'Yes';
?>
                        <label for="name"><i class="fa fa-user"></i> Your Name:</label>
                        <input type="text" name="author" value="" class="form-control" required />
                        <br />
<?php
    }
?>
                        <label for="input-message"><i class="fa fa-comment"></i> Comment:&nbsp;&nbsp;(255 character limit including spaces and punctuation)</label>
                        <textarea id="mylmnt" maxlength="255" name="message" rows="5" class="form-control" required></textarea>
                        <b><span id="mylmntLeft"></span></b>
                        <br />

这是脚本的db插入部分:

$runq = mysqli_query($connect, "INSERT INTO `comments` (`post_id`, `comment`, `user_id`, `date`, `time`, `guest`) VALUES ('$row[id]', '$comment', '$author', '$date', '$time', '$guest')");
                echo '<div class="alert alert-success">Your comment has been successfully posted</div>';

这之后是我的html模板发送电子邮件给订阅者,一个新的评论已被张贴。一切正常。在我的模板后面有这样一行:

}
                echo '<meta http-equiv="refresh" content="0;url=post.php?id=' . $row['id'] . '#comments">';

这将刷新post.php页面并向下跳转到#comment部分。我的问题是刚刚发布的新评论没有显示。到目前为止,看到它的唯一方法是点击浏览器重新加载按钮。我知道要完成我需要的东西,我必须使用 AJAX 和jquery,但我不知道如何做到这一点,以及事情应该去哪里。我已经阅读和研究了许多教程和代码帖子,但没有一个能帮助我开始解决问题。
reload(); reload(true);但没有成功正如我已经说过的,我不知道如何使用 AJAX 和jquery来解决这个问题。

jum4pzuy

jum4pzuy1#

好吧,我的朋友,我密切合作,谁也运行这个博客软件,已经找到了解决我/我们的问题。但首先让我说,核心文件,我从来没有显示提供了所有的输入卫生,所以脚本实际上是相当安全的。问题的答案是这样的。<form action="post.php?id=<?php echo $id, $_SERVER['PHP_SELF']; ?>" method="post">新评论现在在提交后显示。感谢所有试图帮助的人。

相关问题