2017-02-13 12 views
1

JavaScriptとPHPページの両方で乱数を生成し、JavaScript/Htmlページに表示するプログラムを作成しています。AJAXを通じてJavaScriptにPHP変数を送信

これまでは両方のページで正常に数値が生成されていましたが、JavaScriptページから外部PHPページに到達して番号を取得してJS変数に格納する方法はわかりません。

これまで私がこれまで持っていたことは次のとおりです。

はJavaScript:

function roll() 
    { 
     var rollOne; //= Math.floor((Math.random() * 6) + 1); 
     var rollTwo; 
     var request = new XMLHttpRequest(); 

     request.open("GET", "filename.php", true); 
     request.send();     
    } 

は私がコメントアウトされてJSがランダム知って、それは今重要ではありません。

PHP:

<?php 
    sleep(5); 
    $random =(rand(1,6)); 
    echo $random; 
?> 

は、どのように私は、JavaScriptのページにそれを介して送信、PHPのドキュメントから$ランダム取り、後でアクセスするための変数にそれを保存しますか?

このサイトでは何千もの質問がありましたが、私が検索したことから、私には意味をなされたものは見つかりませんでした。

+1

いくつかのAjaxチュートリアルを勉強してください...それらはウェブ上で簡単に見つけることができます – charlietfl

+0

[javascriptからphp関数を呼び出す]可能な複製(http://stackoverflow.com/questions/7165395/call-php-function- from-javascript) –

答えて

2

Mozilla docs on AJAXはよく説明しています。 .open.sendを呼び出す前に、応答がサーバから戻ってきたときに実行するXMLHttpRequestのための機能を設定します。

request.onreadystatechange = function() { 
    if (request.readyState === XMLHttpRequest.DONE) { 
    // The request is complete 
    if (request.status === 200) { 
     // Server responded with HTTP status code 200 (OK) 
     // Here's your server's random value 
     random = request.responseText; 
    } else { 
     alert('There was a problem with the request.'); 
    } 
    } 
} 
+0

恐ろしい!非常に役立ちます! –

0

あなたが返されるデータのresponseTextの値にアクセスすることができます。言い換えれば、PHPからエコーしたデータは、responseTextを使ってjavascriptでアクセスし、変数に格納することができます。

関連する問題