メイン サーバ関連【CGI・FCS・XMLSocket etc】 sendAndLoadがうまくいきません | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
hosidori | Åê¹ÆNo.6409 投稿日時: 2004-4-20 19:24 |
半人前 居住地: 投稿: 31
使用環境:
Flash CS3 FireFox3 WINDOWS Vista |
sendAndLoadがうまくいきません はじめまして。hosidori(星鳥)と申します。
初心者ですが、今後とも宜しくお願いします。 FLASHを買って、本を購入して勉強をしていたのですが 行き詰まってしまいました。どなたか、ご教授して頂けませんか? FLASH側で二つの数を入力して ボタンを押すと、PHPで二つの数を受け取り、計算してから FLASH側に渡し、FLASHに渡った事を確認するために 計算結果を別窓に出力したいのですが、うまくいきません。 動作環境は Flash MX Professional 2004 PHP 4.2.3 Apache 1.3.27 インターネットエクスプローラー6 WINDOWS XP HomeEdition です。 ///失敗したFLASHのステージの内容 ●テキスト入力をする物を二つ配置 変数名は、valueaとvalueb ●ClickHanderをsendFormにしたボタンを配置 ///////以下FLASH側のスクリプト function sendForm(theCompornent) { formData = new LoadVars(); formData.valuea = valuea; formData.valueb = valueb; receivedData = new LoadVars(); formData.sendAndLoad("http://localhost/sum.php",receivedData,"GET"); receivedData.onLoad = function() { trace("合計:" + receivedData.sum); } } //////以下PHP側スクリプト(sum.phpとういうファイル名 <?php $sum = $HTTP_GET_VARS["valuea"] + $HTTP_GET_VARS["valueb"]; print("$sum=".$sum); ?> こういう記述で、計算をするボタンを押しても 何も変化がありません。 本には、$HTTP_GET_VARS["valueb"];を$HTTP_POST_VARS["valueb"]; と書いてましたが、もしかして、GETでは無くPOSTなのでしょうか。 どちらでも動きません。GETが正しそうだと思っています。 何か分かり次第報告致します。 宜しくお願い致します。 。 |
かずぃ | Åê¹ÆNo.6416 投稿日時: 2004-4-20 21:02 |
半人前 居住地: 投稿: 49
使用環境:
98SE 10.3 MX |
Re: sendAndLoadがうまくいきません いくつか問題が散見されますね。
引用: 計算結果を別窓に出力したいのですが LoadVars.sendAndLoadでは基本的に新規にブラウザのウインドウを開くことはありません。 引用: //formData.sendAndLoad("http://localhost/sum.php",receivedData,"GET"); 呼び出す順番が非常に大切です。 引用: 本には、$HTTP_GET_VARS["valueb"];を$HTTP_POST_VARS["valueb"]; その本はPHPのバージョンが古そうですね。今は基本的には$_POST['valuea']、$_GET['valueb']や$_REQUEST['valuea']などとして変数を受け取ります。POSTとGETの使い分けはLoadVars.sendAndLoadの第三引数によります。 なので今回はGETが正しいですね。 また、$_REQUESTはGETでもPOSTでも区別無く受け取れます。 あと、PHP等との連携の試験はムービープレビューだと変な動作をすることがあるのでちゃんとサーバーにアップロードして動作確認をしたほうがいいとおもいます。 |
hosidori | Åê¹ÆNo.6436 投稿日時: 2004-4-21 1:40 |
半人前 居住地: 投稿: 31
使用環境:
Flash CS3 FireFox3 WINDOWS Vista |
お返事ありがとうございます。 お返事ありがとうございます。
まだ少し問題が残りました。 別窓で表示というのは trace("メッセージ"); というコマンドを使って、 「出力」と書かれた別窓に表示させたかったんです。 もしかして、これが間違ってるのかと思い、 trace(messeage); だけを書いてプレビューしてみたのですが 白い画面が表示されるだけで 別窓の「出力」画面が表示されませんでした。 trace("messeage"); trace('messeage'); でもだめでした。 パブリッシュ設定の 「traceアクションを省略可」 にはチェックを入れていません。 ブラウザの広告ブロックが働いてるのかと思い(ありえないと思いましたが念のため) ノートンインターネットセキュリティーをオフにしてもだめでした。 何がおかしいのか、検討がつきません。 何か分かりましたら、宜しくお願いします。 |
hosidori | Åê¹ÆNo.6437 投稿日時: 2004-4-21 2:08 |
半人前 居住地: 投稿: 31
使用環境:
Flash CS3 FireFox3 WINDOWS Vista |
traceに関しては解決しました traceに関しては解決しました。
FLASH MX 2004では、パブリッシュ設定で、 デバッグを許可にチェックを入れないと駄目みたいです。 あと、プレビューモードのみで動作する様です。 これで最初に書いたスクリプトが動くか試してみます。 結果を後で報告します。 |
hosidori | Åê¹ÆNo.6461 投稿日時: 2004-4-21 20:07 |
半人前 居住地: 投稿: 31
使用環境:
Flash CS3 FireFox3 WINDOWS Vista |
御陰様で、問題を解決できました 御陰様で、問題を解決できました。
ありがとうございます。 教えて頂いた通りにやると、正常に動きました。 $_REQUESTはどちらでも使えて、便利そうですね。 sendAndLoadの書く順番も覚えておきます。 とても助かりました。 今後とも宜しくお願いします。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |