HTML5 キャンバス内で Javascript ゲームを実行しています。ここで、PHP のオブジェクトに格納されている変数を自分のプログラムに渡したいと思います。私がしたいのは、私のjsのような関数ですgetVariable = function(){script that gets the variable from PHP and returns it as a string}
ヒントはありますか?
HTML5 キャンバス内で Javascript ゲームを実行しています。ここで、PHP のオブジェクトに格納されている変数を自分のプログラムに渡したいと思います。私がしたいのは、私のjsのような関数ですgetVariable = function(){script that gets the variable from PHP and returns it as a string}
ヒントはありますか?
@Valentin - javascript ajax 呼び出し (または必要に応じて jquery 呼び出し) を使用して、php スクリプトから値を取得します。ゲームでプレイヤーごとに異なる値が設定されている場合、セッションを開始して、スクリプトを何度も呼び出しても値を保持できます。例:
次のような player.php からプレーヤーのヘルスを取得したいとします。
session_start();//start the session
if(!isset($_SESSION['health']))
$_SESSION['health'] = $var;//If there is no value for player health in the session
//initialize the default value
switch($_GET['x']){
case 'health' :
echo $_SESSION['health'];
break;
default :
echo $var;
break;
}
?>
対応する純粋なJavaScriptは-
var health;
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
health=xmlhttp.responseText;
}
}
xmlhttp.open("GET","player.php?x=health",true);
xmlhttp.send();
素晴らしいjQueryを使用して、はるかに簡単な方法で同じことを行うことができます-
var health;
var reqData=["x" : "health"];
var xhrObj = $.get("player.php",x)
.done(function( response ) {
health=response;//The echo text from server
})
.fail(function() {
alert('error');
});
jquery と ajax の詳細については、こちら --> をご覧ください。
ajax チュートリアルについては、www.w3schools.com/ajax/
Javascript とブラウザは、HTML/JS を生成するためにサーバーで使用している言語を気にしません。気にするのは、最終的に何が生成されるかだけです。
あなたが考えていることを行うには、2 つの方法があります。