
初めまして。beterugiusと申します。
ご質問したいのですが、
まず、上下2フレームのindex.phpファイルがあります。
FLASHファイル(top_image.fla)は、シングルフレームのjpegイメージ(三枚の画像をPhotoShopで合成して、一枚のイメージにしてある。)です。
その.flaファイルを書き出した、.swfコンテンツ上をマウスが移動
すると、コンテンツ上のどの部分にマウスがあるかで、下フレームのTHMLが切り替わるようにしたいので、top_image.swf
から、index.phpに対して、GETメソッドでページ番号の変数自身を
渡したいのですが、実際にFLASHコンテンツ上をマウスで動かしてみると、ブラウザのアドレス欄に、GETメソッドのクエリー文字列の「?」
だけは追加されているのですが、肝心の変数が渡されておらず、
下フレームのHTMLも切り替わりません。
どうすればちゅんと動くのか、どなたかご回答いただけないでしょうか?
--------------------------------------------------------------
「top_image.fla」
var sendObj:LoadVars = new LoadVars();
var page:Number;
function onMouseMove(){
var x:Number = top_image._x; // グラフィックの中心座標
var y:Number = top_image._y;
if( 0 <= y && y <= 316 ){
if( 0 <= x && x <= 255 ){
page = 1;
sendObj.send("../php/index.php", "page", "GET");
}
else if( 256 <= x && x <= 512 ){
page = 2;
sendObj.send("../php/index.php", "page", "GET");
}
else if(513 <= x && x <= 766 ){
page = 3;
sendObj.send("../php/index.php", "page", "GET");
}
}
}
--------------------------------------------------------------
「index.php」
<html>
<head><title>ActionScript2.0</title>
<meta http-equiv="content-type" content="application/x-www-form-urlencoded">
</head>
<frameset rows="350,*">
<frame name="top" src="../html/top.html">
<?php
// Action ScriptからのPOSTデータの取得
$page = $_GET['page'];
switch($page){
case 1:
print("<frame name='bottom' src='../html/bottom1.html'>");
break;
case 2:
print("<frame name='bottom' src='../html/bottom2.html'>");
break;
case 3:
print("<frame name='bottom' src='../html/bottom3.html'>");
break;
}
if(is_null($page)){ // $page変数の中身がNULL(未定義)の場合
print("<frame name='bottom' src='../html/blank.html'>");
}
?>
</frameset>
</html>
-------------------------------------------------------------
No.1
- 回答日時:
index.phpでフレームの上下を表示するようにしているなら
p = 1;
url = "../php/index.php?page="+p
getURL(url,"_top", "GET");
下のフレームだけ変えたいのなら
p = 1;
url = "../html/bottom"+p+".html";
getURL(url,"bottom");
//※bottomは下のフレーム名
がわかりやすいと思います。
LoadVarsクラスを使うなら
p = 1;
url = "../php/index.php?page=" + p;
sendObj.send(url, "_top", "GET");
//※フレーム全体をphpで書き換えるので"_top"
だと思います。
環境が無いので確認していません。
この回答への補足
スクリプトをperseさんのおっしゃるように、
getURL()関数を用いて書き換えたました。
とりあえず、上下のフレームを無くして、
ひとつのページにし、POSTメソッドでtop_page.swfから
index.phpに変数1,2,3を送信してみました。
そして、index.php側で、
<?php
$page = $_POST['page'];
switch($page){
case 1:
print $page;
break;
case 2:
print $page;
break;
case 3:
print $page;
break;
}
if(is_null($page)){
print "not page";
}
?>
として動作させたところ、
合成画像のイメージ2上でマウスをクリックしたときだけ、
index.php上に、「2」と表示され、
イメージ1とイメージ3上では「not page」
と表示されてしまいます。(要するに、1と3のときだけ、
変数の中身がindex.phpに渡ってない)
(1)これはどうしてなのでしょうか。
(2)~index.php?page=2&onMouseMove=%5type+Function%5D~
などと、?page=2のあとにだらだらアドレスがくっついている
のですが、POSTメソッドで送ったときもこういう動作になるのは
間違いではないのでしょうか。
(3)top_image.swfコンテンツの上にマウスをもっていくと、
「クリックするとこのコントロールをアクティブにして使用します」
と表示されますが、この表示と、あとコンテンツの周りの破線の
ような枠を非表示にすることはできないのでしょうか。
(4)私が求める動作は、このように毎回、コンテンツ上をクリックして
コンテンツをアクティブにさせてから下フレームを切り替えるのでは
なく、ただコンテンツ上をマウスを動かしただけで、下フレームの
HTMLを切り替えたいのですが、それはどうすればよいのでしょうか。
少々ご質問が長引きましたが、できましたら、(1)~(4)について
それぞれご回答をお願いしたいのですが…。
どうぞよろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
arduino プログラムについて
-
VB6.0で、フォームから、別のフ...
-
else if文の順序を変えることに...
-
FLASHで脱出ゲームを作る時の、...
-
マウス自体の移動量の取得
-
OpenGLで背景をグラデーション...
-
レーダーチャートの描画
-
全てのテキストボックスをセル...
-
ActionScript2.0での座標
-
PYTHONのtkinterについて
-
pythonの画像の貼り付けについて
-
2分木を中順でなぞりたいので...
-
ASで作成したテキストフィール...
-
フェードイン-(待機)-フェー...
-
Pythonのtkinterについて
-
ActionScriptで対象外の音まで...
-
文字(テキスト)の潰れ・にじ...
-
秀丸のテキストをドラッグ&ド...
-
ダブルクリックと2回クリックの...
-
XMLの&が&に変換されない
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
arduino プログラムについて
-
マウスオーバーで色が薄くなる...
-
flashのボタンは、ムービークリ...
-
FLASHで画面の最大化と100%表示...
-
×ボタンを無効化したいのですが...
-
autohotkeyかAutoITでGUiランチャ
-
「ボタンロールオーバー時のイ...
-
スライドプレゼンテーション機...
-
動くボタンでリンク
-
ボタンの上に重なっているMCを...
-
変数に256文字以上のテキストを...
-
else if文の順序を変えることに...
-
photoshopで書いた四角の枠の中...
-
全てのテキストボックスをセル...
-
テキストボックスの中身をリセ...
-
UWSCのBTN関数について。
-
四乗根を英語で言うと・・・
-
python ボタンを押すと複数の関...
-
別のアプリケーションのテキス...
-
static関数がmapファイルに載ら...
おすすめ情報