[PHP-users 22299]Re: PHP javascript間での変数受け渡し 一応解決

okada @ shopmie.com okada @ shopmie.com
2004年 6月 21日 (月) 17:37:46 JST


おかだ です。
一応、PHP javascript間での変数受け渡しができましたので報告です

(引用抜粋)
>ソフト工房さんのこちらのソース・・・
> ・・・インナーフレームを使えばいいのではないかと思います。
>http://www.interq.or.jp/japan/satoshi0/sample/textfile/index.htm
などを参考に、ifremにて 変数をGETでPHPに渡し、ifrem内からPHP変数を
親フレームに反映させました。
おそらく、 window.openや隠しフレームと同等の手段?と思われますが、
検索の度に別窓を開けずにいいため、こちらを使用してます
以下testソース抜粋です

001.htm//**************************
<script language="JavaScript"><!--
function test(){
var num = document.form1.ta.value;
document.form1.tb.value = num;
window.ifr.location.href="002.php?da="+num; ←GETにてifremに変数渡し
}//--></script>
<form action="" method="post" name="form1" id="form1">
<div class="style1" id="id01" onClick="test()">000</div><br> ←stylシー
トでリンクぽくしています
<input name="ta" type="text"><br> ←変数入力窓
<input name="tb" type="text"><br> ←PHPに渡す変数
<input name="tc" type="text"><br> ←PHPからの戻り値
<iframe src="002.php" name="ifr" id="ifr" width="0" height="0"
marginheight="0" marginwidth="0" frameborder="0" scrolling="no" align="top">
</iframe>
</form>


002.php//変換バッファ?全ソースです。なるべく最小限で作りたい************
<? extract($_GET); ?>
<html><head><meta http-equiv="Content-Type" content="text/html;
charset=euc-jp">
</head><body>
<? include ("select.php");?>
<script language="JavaScript">
<!--//
parent.document.form1.tc.value = "<? echo postcall($da);?>"; 
//-->
</script>
</body></html>

簡易説明
//postcall(郵便番号)は住所を戻すユーザー関数(select.phpで記述)
//戻り値を親フレーム?に反映
//select.phpはWEBで探した郵便番号→住所のPHP

javascriptには詳しくないので、参考書やHPを片手に作成しましたので
ソースはきれいではないと思いますので、「こうした方がよい」場合は
ご教示いただけるとありがたいです。

>Flushとの連携ってどこかに事例があったと思いますが。
actionscriptでできるのか、試してみたいです。













PHP-users メーリングリストの案内