1

リモートWebサーバーにいくつかのphpスクリプトがあり、それらのリモートスクリプトを連続して実行するローカルスクリプトを作成して(数秒ごとの遅延で問題ありません)、次の実行を続行する方法がわかりません。ローカルのphpスクリプト(リモートスクリプトによって収集された情報を分析します)。

現時点では、リモートスクリプトを実行するためだけにiframeを使用していますが、使用したくありません。

私はこれを行うためにjavascriptを使用できると想定していますが、PHP / MySQLをある程度プログラムすることはできますが、javascriptに関しては迷っています。

4

4 に答える 4

2

PHPでcURLを使用できます。httpリクエストを作成して結果を待ち、sleep()を使用して実行の間隔を空けます。

http://us3.php.net/curl

于 2011-02-06T03:07:54.520 に答える
1

事前にすべてのURLを知っている場合は、次のようなものを使用できます。

var data = [];
$.when( $.ajax("url1.php") ).then(function(ajaxArgs){
data.push(ajaxArgs);
$.when( $.ajax("url2.php") ).then(function(ajaxArgs){
data.push(ajaxArgs);
$.when( $.ajax("url3.php") ).then(function(ajaxArgs){
data.push(ajaxArgs);
// process data
})
})
});

jQuery1.5を使用http://api.jquery.com/jQuery.when

于 2011-02-06T06:19:22.380 に答える
0

OSとサーバーのOSに応じて、cronから次のようなことを行うことができます。

ssh user@host '/usr/bin/php /path/to/script.php'

cronを介してサーバー上で直接実行することもできます。

/usr/bin/php /path/to/script.php

または、wgetまたはcurlを使用して、Apache/your-fav-web-serverを介してスクリプトを実行することもできます。ただし、上記の方法には、スクリプトエラーの電子メールを簡単に受け取るなどの利点があります。

おそらくもう少し情報を提供します:*リモートサーバーOS?*サーバーシェルアクセス?*ワークステーション/ローカルサーバーOS?

于 2011-02-06T05:20:39.047 に答える
0

jqueryを使用する場合は、次のようなものを試すことができます

$(function(){
    $.get('http://youraddress/script1.php',function(){
        $.get('http://youraddress/script2.php',function(){
            $.get('http://youraddress/script3.php',function(){
                $.get('http://youraddress/script4.php',function(){
                    //you are done
                });
            });
        });
    });
});
于 2011-02-06T07:57:00.263 に答える