私は2つのファイル、index.phpとget_data.phpを持っていると言う。get_dataで私のDBからのデータを出力するループは、私のDBからユーザー名、画像、アップロード後の画像の秒数/タイマーと言う。インデックスでは、whileループからの出力を表示するためにget_feedを呼び出す必要があります。残りのデータではなく#timerというタイマーdivをリフレッシュするだけです。これをどのように行うことができますか?今のところ私はすべてのコンテンツを、index.phpの#responseに出力している画像をすべてリフレッシュすることができます。この画像は、画像を更新して、画像をリフレッシュするので、多くの画像が表示され、パフォーマンスが低下します。ajaxでphpファイルから呼び出されている外部divを更新するにはどうすればよいですか?
index。 PHP -
<div id="response"></div>
repeatAjax();
function repeatAjax(){
$.ajax({
type: "GET",
url: "get_feed.php",
dataType: "html",
success: function(response){
$("#response").html(response);
},
complete: function() {
setTimeout(repeatAjax,1000);
}
});
};
get_feed.php -
$today_date = date('Y-m-d H:i:s');
$sql = "SELECT image, user, date FROM images";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$image = $row['image'];
$user = $row['user'];
$date = $row['date'];
$timeFirst = strtotime($today_date);
$timeSecond = strtotime($date);
$timeSecond = $timeSecond + 86400;
$timer = $timeSecond - $timeFirst;
echo '<div id="timer">'.$timer.'</div>';
echo '<div id="user">'.$user.'</div>';
echo '<img src="'.$image.'" id="image"';
}
} else {
echo "0 results";
}
私はちょうどこの例のためにそれを書いたが、上記のスクリプトでエラーがあるかもしれませんが、私はちょうどリフレッシュすることなく毎秒のタイマーをリフレッシュされるためつもりですイメージまたはユーザー名また、サイトに多くの人がいると、サーバが毎秒更新する負荷を処理できない場合、私のサイトがクラッシュする心配です。
ありがとう!
要件制約が許せば、JavaScriptを使ってタイマーを表示することもできます。 –
どうすればこのことになるでしょうか?私はそれを間違って説明しているかもしれないと思うかもしれませんが、ここに例があります - Facebookのようなボタン、そのボタンが青くなり、あなたのようなものが合計に追加され、リアルタイムで更新されますが、私は何もクリックしていないことを知っているが、それは同じ考えのように思える、@Rohith –