- 締切済み
受け取った値が"undefined"と表示されてしまう。
QNo.2601015で質問させて頂いた者なのですが、 もう一つ理解出来ない事がありましたので 再度質問させて頂きます。 変数1(value1)と変数2(value2)があり、それらを入力して ボタンを押すと、変数1+変数2の結果がPHP側で処理され、Flash側のtraceで出力される単純なプログラムを作成しています。 みなさんのお力で なんとかFlash側でデータを受け取るところまでは いけたのですが、受け取った値が”undefined”となってしまいます。 undefinedとは変数が未定義である時に表示されるのですよね? ソースのミスはないと思うのですが。。 下記がソースです。何度もすみませんが、よろしくお願いします。 //Flash側 on (release) { formData = new LoadVars () ; formData.value1 = value1 ; formData.value2 = value2 ; /受信用 receiveData = new LoadVars () ; receiveData.onLoad = function(){ trace(receiveData.sum) ; } formData.sendAndLoad("http://localhost/phptest.php", receiveData, "GET") ; } //PHP側 <?php $sum = $HTTP_GET_VARS['value1'] + $HTTP_GET_VARS['value2'] ; echo ('sum=' . $sum); ?> 環境: windows XP , XAMPP, DREAMWEAVER8,FLASH8, IE6
- みんなの回答 (2)
- 専門家の回答
補足
sassakunさん 度々ありがとうございます。 早速、 receiveData.sendAndLoad("http://localhost/phptest.php", frormData,"GET") ; の様に変更してみたのですが、だめでした。ボタンを押しても反応しませんでした。 またtraceを下記のように配置し、 value1=2,value2=5で実行してみた所↓ _____________________________________________________________ on (release) { trace("A:value1=" + value1 + ",value2=" + value2); formData = new LoadVars () ; formData.value1 = value1 ; formData.value2 = value2 ; receiveData = new LoadVars () ; receiveData.onLoad = function(){ trace(receiveData.sum) ; trace("B:value1=" + formData.value1 + ",value2=" + formData.value2); } formData.sendAndLoad("http://localhost/phptest.php", receiveData , "GET") ; trace("C:value1=" + formData.value1 + ",value2=" + formData.value2); } ______________________________________________________________ A:value1=2,value2=5 C:value1=2,value2=5 undefined B:value1=2,value2=5 と出力されたので 変数にはちゃんと値が渡っていると思います。 また↓の様にプログラムしてphp側のsumの値をみたところ on (release) { formData = new LoadVars () ; formData.value1 = value1 ; formData.value2 = value2 ; formData.send("http://localhost/phptest.php", "_self", "GET"); } php側ではsum = 7 と出るのでphpの方も問題はないと思います。 何がいけないのでしょう。。 うーん わかりません。。