2012-04-23 244 views
1

我有一個index.php文件,我有帆布遊戲。這個遊戲從單獨的game.js文件中加載,其中我有變量:ballsCought。我希望這可靠和名字inputet文本輸入傳遞點擊另一個PHP文件。我的代碼:將全局javascript變量傳遞給php

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <title>Simple Canvas Game</title> 
    <script src="http://code.jquery.com/jquery-latest.js"></script> 
    <script> 
     $(document).ready(function(){ 

      function score(){ 
       $('#score').fadeIn(1000); 
       $('#score').load("load_players.php"); 
      }; 

      setInterval(score , 1000); 

      var nam = $("#name").val();   

      $('#submit').keyup(function(e){ 
       if(e.keyCode == 13){ 
       $.post('upload_score.php','n=' +nam, 'score=' +ballsCought); 
       } 
      }); 

      $('#submit').click(function(e){ 
       $.post('upload_score.php','n=' +nam, 'score=' +ballsCought); 
      }); 

     }); 
    </script> 
</head> 
<script src="game.js"></script> 
<body> 
    <canvas id="canvas" width="525" height="525"></canvas> 
    <br /><p><span id="points"></span><input type="text" id="name" placeholder="Name..."/><input type="submit" id="submit" value="Submit"/></p> 
    <br /><span id="score"></span> 
</body> 
</html> 

但是,這個職位功能不工作任何想法?謝謝你...

+1

爲什麼不把你的變量的值放在隱藏字段中,然後將該值從隱藏字段傳遞到你想要的其他頁面。 – 2012-04-23 16:29:40

+0

「不工作」是什麼意思?你得到什麼錯誤? – j08691 2012-04-23 16:36:14

+0

我試圖去做。爲了將變量值隱藏起來,但我無法使其工作,但它不會傳遞。仍然返回0.此代碼:$(「#points_hidden」)。html(ballsCaught); points_hidden是隱藏字段,此行位於game.js文件內 – 2012-04-23 17:08:34

回答

1

看起來像你的$ .post方法是不正確的。如果你想將數據傳遞到PHP頁面,你需要使用JavaScript對象符號,像這樣:

$.post('upload_score.php', {n: nam, score: ballsCought}); 

你可以閱讀更多有關各種方式從jQuery Docs頁面調用$。員額現在

您的PHP頁面可能仍然存在問題。您應該使用類似Firebug的東西來查看Ajax請求以及可能返回的任何錯誤。