gpt4 book ai didi

php - AJAX PHP-加载前一个插入的记录而不是第一个

转载 作者:行者123 更新时间:2023-11-30 00:55:08 26 4
gpt4 key购买 nike

我有一个原始评论系统,可以在其中发表评论。单击 post 按钮时,AJAX 请求将发送到 php 文件 (process.php)。在 process.php 中,有一个 while 循环,它检索所有注释并将其作为数据发送回 index.php 文件。

问题是当我发布两条评论时,我在当前评论之前发布的评论显示在指定的div中!

index.php

if(isset($_POST['text'])){
if(!empty($_POST['text'])){
$text = $_POST['text'];

$query = mysql_query("INSERT INTO `test` VALUES('', '$text')");
}
}

?>

<form action="" class="comment_post" method="POST">
<input type="text" name="text">
<input type="submit" value="POST">
</form>
<hr>

<div id="comments">

</div>

<script>
$('form.comment_post').on('submit', function(){
var that = $(this),
url = that.attr('action'),
type = that.attr('method'),
data = {};

that.find('[name]').each(function(index, value){
var that = $(this),
name = that.attr('name'),
value= that.val();

data[name] = value;
});
$.ajax({
url: url,
type: type,
data: data
});
return false;
});
$('input[type=submit]').click(function(){
$.ajax({
type : 'POST',
url : 'process.php',
data : {action: 'retrieve'},
success : function(data){
$('#comments').html(data);
}
});
});
</script>

流程.php

if(isset($_POST['action']) && !empty($_POST['action'])){

$action = $_POST['action'];

if($action == 'retrieve'){
$data = mysql_query("SELECT * FROM `test`");

if(mysql_num_rows($data) != 0){
while($row = mysql_fetch_assoc($data)){
$text = $row['text'];

echo '<div class="each_comment">'.$text.'</div><br>';
}
} else {
echo 'No data to retrieve';
}
}

}
?>

最佳答案

首先通过“dateCreated”列扩展数据库

然后使用此插入代码:

$query = mysql_query("INSERT INTO `test`,`dateCreated` VALUES('', '$text','NOW()')");

在您的 process.php 中使用如下代码:

$data = mysql_query("SELECT * FROM `test` ORDER BY `dateCreated` DESC ");

关于php - AJAX PHP-加载前一个插入的记录而不是第一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20634898/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com