我将Codeigniter 3用于一个网站,该网站有一个非常简单的注释表单,它使用jQuery ajax()
方法与服务器通信。这是片段。
$.ajax({
method: 'POST',
url: '/index.php/comments/publish_reply/',
cache: false,
data: $("form.actreply").serialize()
}).done(function(res){
console.log(res);
});
它工作得很好,第一次成功地从服务器上获取了所有信息,但如果我再次提交具有不同内容的表单,每次都会获取旧评论(第一条评论)!
我已经仔细检查了服务器端的问题,似乎没有问题。
以下是用于获取当前注释的模型:
public function get_single_reply($time, $current_user_id)
{
$data = $this->db->select('reply.*, users.u_id, users.u_name, users.u_status')
->from('reply')
->join('users', 'users.u_id = reply.reply_author_id')
->where([
'reply.reply_date' => $time,
'users.u_id' => $current_user_id
])
->limit(1,0)
->get()
->result();
if ($data) return $data[0];
else return false;
}
这里少了什么?
新年快乐
您的查询获取的似乎不是当前注释,而是当前日期的第一个注释(如果reply.reply_date是日期)。您应该添加order by reply.reply_date desc
以使其按预期工作。