こんばんは。非常に悩んで困っています。

(参考図)
              ┌→上フレーム(A.php)
              │
              │
aaa.php→bbb.php―┼→中フレーム(B.php)
              │
              │
              └→下フレーム(C.php)

もし、A.php ページ内のボタン【B】をクリックしたら、中フレームで B.php ページが表示される仕組みで
その時、同時に下フレームの C.php ページで、中フレーム にはどのページが表示されているのかを
URLで取得する仕組みにしたいのですが、どうやったよいのでしょうか?

具体的には、その時、B.php ページのURLデータを C.php ページ内のボタン【B】のリンクとなるURLに収納したいのです。
そして、C.php ページ内のボタン【B】を押しても、中フレームで B.php ページが表示される仕組にしたいのです。

自分なりに、セッション関数などを使い色々と試したのですが、どうもうまい事いきません。(汗)

ちなみに、セッション関数でデータの受け渡しの仕組みをした場合・・・
A.php のページ内のボタン【B】をクリックしたら、中フレームで B.php ページのURLを
B.php ページ内で、セッションの値を $_SESSION['burl'] = $burl; として保存し
C.php ページ内のボタン【B】URL指定のところで $_SESSION['burl'] として呼び出しても、値が収納されません。(汗)

【参考】
・ 上記の参考図の表示がずれていたら脳内変換で宜しくお願いします。
・ ページはフレームを使用し、上フレーム・中フレーム・下フレームと縦に組んでいます。
・ bbb.php のページは require 関数で呼び出されるページとなってます。

中途半端な知識で対応できず、苦しんでおります。
ちなみに、私は「PHP」の経験が浅いので、分かりやすく詳しく教えて頂けると非常に助かります。
もし宜しければ何方か、どうか教えて下さい。宜しくお願いします。

A 回答 (1件)

b.phpで


session_start();
$_SESSION['burl'] = $_SERVER['REQUEST_URI'];//sample

c.phpで
session_start();
$burl = $_SESSION['burl'];

とすれば普通に取得できるかと。
勿論 c.php はリロードが必要です。
他にはJavaScriptで、例えばaaa.phpにURLを保持させる方法とか。

この回答への補足

早々のご回答有難うございます。
やはり、セッションの場合でも C.php ページをリロードさせないとダメなんですね。(汗)

Javascript は利用したくないのです。(汗)

C.php ページ内の xxx の所のURLを、PHPのfunction 関数でURLを入れ込む仕組みはできないでしょうか?

クリックしたら xxx() 関数でURLを入れ込む仕組み的なイメージです。(汗)
<li><a href="<?=xxx()?>"target="B">ページ確認</a></li>
}

補足日時:2011/04/11 22:20
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報