ライブ更新メッセージの提案が必要です。ここに私のコードがあります:
<script>
function fetch_messages(){
var user_id = "1" // example id
$.ajax({
url: "do_fetch.php",
type: "POST",
data: { user_id : user_id },
dataType: "json",
success: function(data) {
for (var i = 0; i < data.length; i++) {
$("#messages_list").append('<div id="'+data.id+'">'+data.message+'</div>');
}
setTimeout("fetch_messages()", 3000);
}
});
}
$(function(){
fetch_messages();
});
</script>
そしてdivメッセージがあります:
<div id="messages">
</div>
phpコード:
<?php
include('connection.php')
$user_id = $_POST['user_id'];
$my_id = $_SESSION['user_id'];
$sql = 'SELECT * FROM messages WHERE user_id = '.mysql_real_escape_string($user_id).' AND my_id = '.mysql_real_escape_string($my_id);
$result = mysql_query($sql, $connection);
echo json_encode($result);
?>
このコードは機能しますが、すべてのメッセージを読み取って表示する必要はありません。新しいメッセージのみを読み込む必要があるため、どうすればよいですか? タイムスタンプ付きの非表示フィールドを配置し、それ以降の時間を ajax で確認する必要がありますか?