0

データベースを更新するメソッドを含むphpファイルがあります。ただし、Javascript では、5 秒ごとにこのページを「訪問」してコンテンツが更新されるようにするにはどうすればよいですか。

ここに私のupdate.phpファイルがあります:

<?php include('config.php') ?>

<?php
mysql_query("UPDATE paint SET paint_points='test'") or die(mysql_error());
echo "Updated";
?>

申し訳ありませんが、私は用語に精通していません。

ありがとう

4

3 に答える 3

2

setIntervalJavaScript で 5 秒ごとに (a)jax リクエストで関数を使用します。

//syncronized jax:
function myjax() {
    var oXhr = new XMLHttpRequest();
    oXhr.open("POST", "yourphp.php", false);
    oXhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=utf-8");
    oXhr.send(null);
}

//set an interval each 5 seconds to call your myjax method
setInterval(function() { myjax(); }, 5000);

この例では、要求は同期的ですが、必要に応じて非同期にすることもできます。

于 2013-03-06T18:45:15.250 に答える
1

最も簡単なケースは、次のようにページをリロードすることです。

<script type="text/javascript">
 setInterval(function() { location.reload(true); }, 5000);
</script>

ページをフェッチするために ajax 呼び出しを使用すると、より洗練されたものになります。

于 2013-03-06T18:45:30.687 に答える
0

jQuery の使用:

(function() {
    var updateAgain = arguments.callee;
    $.get('/url/to/script.php', function() {
        setTimeout(updateAgain, 5000);
    });
})();

このオーバーの利点はsetInterval、リクエストが終了するまで 5 秒のカウントが開始されないことです。これは、リクエストに 1 ~ 2 秒以上かかる場合に重要です。また、リクエストが失敗した場合も停止します (これは利点である場合とそうでない場合があります)。

于 2013-03-06T18:47:27.843 に答える