• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:actionscript2.0 とphp を用いてブラウザでswfファ)

ブラウザでswfファイルを表示する方法についての質問

このQ&Aのポイント
  • actionscript2.0とphpを使用して、ブラウザでswfファイルを表示しています。
  • actionscript側ではsendAndLoadメソッドを使用して、test.phpに値を送信しています。
  • test.phpで値は取得しているが、ページがロード(更新)されず、フレームが遷移しない問題が発生している。

質問者が選んだベストアンサー

  • ベストアンサー
  • Hardking
  • ベストアンサー率45% (73/160)
回答No.2

ActionScript 2.0であればgetURLの使用は問題無いです。 JavaScriptの記述位置が間違っていたようです。 すいませんが、下記内容に修正して再試行して下さい。 後、test1.phpとtest2.phpが同じ場所にあること。 <html> <head> <script language="JavaScript"> <!-- function setIframe(p_param) { window.bottom1.location.href = "test.php" if (p_param == "1") { window.bottom2.location.href = "test1.php" } else { window.bottom2.location.href = "test2.php" } } // --> </script> <title></title> </head> <body> 途中省略 <IFRAME NAME="bottom1"> </IFRAME> <IFRAME NAME="bottom2"> </IFRAME> </body> </html>

kashika
質問者

お礼

申し訳ございません。 結局getURLに関して解決策が見つからなかったので、 他サイトで解決を試みます。 有難うございました。

kashika
質問者

補足

ご返信ありがとうございます。 javascriptの記述位置を<head>の部分に移行しましたが、 変化はありませんでした。 試しにdocument.writeを使ってjavascriptが正常に動いているかどうか 確かめましたが、正常に出力されていました。 またFlashファイルでflashのみをデバックをかけた場合にも getURLまでは動いていました。 しかし、getURLで関数に値が渡っていないのか、 それとも非同期的にブラウザが更新されないのか、 ボタンを押してもtest1,2ファイルは表示されませんでした。 ご迷惑をおかけして申し訳ありません。 今後ともアドバイス願います。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • Hardking
  • ベストアンサー率45% (73/160)
回答No.1

当FLASHアプリが実行されているブラウザページ本体(同じHTMLファイル)に FLASHを表示するエリアとインラインフレームの表示エリアを配置するべきです。 【処理例】 //フラッシュボタン押下時 (ActionScript) on (release) { //JavaScriptのsetIframe関数(自作)を呼ぶ。パラメータは1または2 getURL("javascript:setIframe('1');"); } (JavaScript) <script language="JavaScript"> <!-- function setIframe(p_param) { window.bottom1.location.href = "test.php" if (p_param == "1") { window.bottom2.location.href = "test1.php" } else { window.bottom2.location.href = "test2.php" } } // --> </script> <html> <body> 途中省略 <IFRAME NAME="bottom1"> </IFRAME> <IFRAME NAME="bottom2"> </IFRAME> </body> </html>

kashika
質問者

お礼

ご返信ありがとうございます。 補足に書き忘れたのですが、 何も実行されないということは、<IFRAME NAME="bottom2">の所が 真っ白になってなにも表示されないということです。

kashika
質問者

補足

ご返信ありがとうございます。 言われた通り当り、FLASHアプリが実行されているブラウザページ本体(同じHTMLファイル)に FLASHを表示するエリアとインラインフレームの表示エリアを配置しました。 まずtest.phpを以下のように <script language="JavaScript"> <!-- function setIframe(p_param) { if (p_param == "1") { window.bottom2.location.href = "test1.php"; }else{ window.bottom2.location.href = "test2.php"; } } // --> </script> <html> <body> FLASHを表示するぺージ <IFRAME SRC="FLASH.php" width="***" height="***"> </IFRAME> <IFRAME NAME="bottom2"> </IFRAME> </body> </html> FLASH側では ボタンを二つ作成し、それぞれを on (release) { getURL("javascript:setIframe('1');"); } や on (release) { getURL("javascript:setIframe('2');"); } と記述したのですが、動作させてみると、test.php上では、 ボタンを押しても何も実行されません。getURLで関数を呼んでいないようです。 getURLに関して調べましたが、ちょっと悩んでしまっている状態です。 FLASH、HTMLファイルなど全て同じフォルダに置いています。 すみませんが、解決策などありませんでしょうか?

すると、全ての回答が全文表示されます。

関連するQ&A