0

私は HTML5 ゲームを作成しており、レベルごとに新しい HTML ページがあります。各レベルの結果は JS 変数に格納されます。

URL を使用してその情報を次のページに渡すにはどうすればよいですか?

みたいなことを考えていた

www.example.com/level5.php?lvl1=10&lvl2=15&lvl3=13

等々。

JS 変数値をこのタイプのアドレスに入れるにはどうすればよいですか?

JS でこの情報にアクセスする必要はありませんが、情報を追加するだけで済みます。

ありがとう!

4

4 に答える 4

0

すべての結果を含むセッション変数はどうですか?セッションがアクティブである限り(つまり、通常はブラウザーが開いている限り)、スコアは各レベルの最後に更新されます。セッションにスコアがない場合は、最初のレベルをロードする必要があります。進行状況を保存するために、ユーザーが次に入力する必要がある「進行状況キー」を与えることができます。

別の方法として、JavaScriptのみを使用する場合は、HTML5LocalStorageを調べることができます。ブラウザがすでにHTML5と互換性があることを考慮に入れると、状況は適切な候補になる可能性があります。

GETパラメータの何が問題になっているのかというと、URLにハイスコアを保存するために選択する名前に関係なく、人々は調査し、すぐにハイスコアを変更して、良いスコアで得られるボーナスのロックを解除したり、スパムのリスト(例:ランク#1:このblablablaを購入$ xx blabla.com(9999999999ポイント))。LocalStorageはごまかすのが少し難しいですが(しかし十分に簡単です)、セッション変数はごまかすのがはるかに難しいです。

于 2013-02-17T17:56:06.187 に答える
0

jQuery を使用しない場合:

var lvl1 = "10";
var lvl2 = "15";
window.location.href = "www.example.com/level5.php?lvl1="+lvl1+"&lvl2="+lvl2;

次に、この URL から PHP で変数を作成するには、GET を使用します。

$lvl1 = $_GET['lvl1'];
$lvl2 = $_GET['lvl2'];
于 2013-02-17T08:00:42.343 に答える
0

jQuery を使用して、リンクの「href」属性値を変更できます。

$("#lvl2link").attr("href","www.example.com/level2.php?lvl1=" + score);

jQuery がなくても同じ効果が得られます。

ここに JSFiddle があります: http://jsfiddle.net/ZPv93/1/

于 2013-02-17T07:45:13.673 に答える
0

次のスニペットを使用して、Javascript で $_GET 変数にアクセスできます。

(function(){ // Import GET Vars
   document.$_GET = [];
   var urlHalves = String(document.location).split('?');
   if(urlHalves[1]){
      var urlVars = urlHalves[1].split('&');
      for(var i=0; i<=(urlVars.length); i++){
         if(urlVars[i]){
            var urlVarPair = urlVars[i].split('=');
            document.$_GET[urlVarPair[0]] = urlVarPair[1];
         }
      }
   }
})();

それらにアクセスするには、次を使用します。

document.$_GET['lvl1']

クレジット: http://failchad.blogspot.ch/2009/01/accessing-get-variables-in-javascript.html

情報を追加するには、次のスニペットを使用します@tommyf

于 2013-02-17T17:38:11.510 に答える