-4

重複の可能性:
PHP 関数への jQuery AJAX リクエストの作成

私は本当に単純な式を実行しようとしていますが、

Web ページを呼び出すと、数秒ごとに Ajax が php 関数を呼び出して「Hello World」をエコーし​​ます

<?php
function test(){
     echo "Hello World";
}
?>
<script type="text/javascript">

function testingTimer()
{
    //CALL PHP FUNCTION CALLED TEST
}

setInterval('testingTimer()',5000);
</script>

必要なのは、既に宣言されている php 関数を呼び出すコードだけです。

4

6 に答える 6

2

直接呼び出すことはできません。AJAXのコードを記述し、URLを呼び出して、アクションGETmyfile.php?action=test変数がtestと等しい場合はファイルに書き込み、その関数を呼び出します。他の出力を防ぐために、コードを終了することを忘れないでください。myfile.php

于 2012-10-10T07:51:07.543 に答える
0

AJAXには、それ自体で任意のphp関数を呼び出す機能はありません。AJAXを使用すると、特定のページに接続してデータをリクエストできます。そうは言っても、AJAXを使用して特定のページをロードでき、そのページが行うのはテスト関数を呼び出すことだけです。

于 2012-10-10T07:50:23.770 に答える
0

ajax呼び出しを行う方法についてのGoogle。これは、あまりにも多くのチュートリアルで説明されている基本的な知識であり、フレームワークを使用しているかどうか、および使用しているかどうかによって異なります。

于 2012-10-10T07:50:42.653 に答える
0

たとえば、何かを投稿できます。

function testingTimer()
{
     $.post(URL,
            {
            foo : 'foo'
            }
     );
}

とphpチェックポストで:

if (isset($_POST['foo']))
    test();
于 2012-10-10T07:51:56.610 に答える
0

ajax 関数を使用するには、 jQueryを使用する必要があります。

サーバーが応答するのに 5000 秒以上かかると、同時に 2 つの要求が発生するため、サーバーの応答後にsetInterval ではなく setTimeout を使用する必要があります。タイムアウトを設定したい場合は、jqXHR オブジェクトの中止関数をいつでも確認できます。

たとえば、次のことができます。

function refresh() {
    $.ajax({
        type: 'GET',    // can be POST or GET
        url: 'page.php' // php script to call
    // when the server responds
    }).done(function(response) {
        console.log(response);
        // call your function automatically
        setTimeout(refresh, 5000);
    });
}
于 2012-10-10T07:52:24.987 に答える