プロが教えるわが家の防犯対策術!

セッションのスコープ(有効範囲)について困っています。
ご存じの方がいましたら教えてください。

現象:同一ドメインでフォルダ階層が異なる場合にセッションが切れてしまう。
例)
http://oshiete1.goo.ne.jp/aaa/a.php セッション生成
http://oshiete1.goo.ne.jp/aaa/b.php ○セッション参照
http://oshiete1.goo.ne.jp/bbb/b.php ×セッション参照

あれこれ試行錯誤して1日がつぶれてしまいました。
以下についてお教え頂けたら幸いです。
Q.別階層でもセッションは参照できるか。
  上位階層でセッションを生成しないと下位階層では共有できない?
  もしくは何か方法がある?

書籍などもあさったのですが、スコープについては同一ドメインであることくらいしか記述されていませんでした。
できる、できないの一言だけでもいいので、なにとぞよろしくお願いします。

A 回答 (2件)

cookieを利用しているsessionなら以下の変数をチェックしましょう。


session.cookie_path
次の関数でも、解ります。
session_get_cookie_params ( )

defaultの "/" なら、サイト内全てに有効のはずですが、どこかで、 '' 空文字列に変更したりしていると、cookieを作成したディレクトリー内でしか使えなくなります。
    • good
    • 0

ファイルが削除されてしまっていたので状況は分かりませんが、


別階層でもセッションは参照できます。
上位階層でセッションを生成しなくても共有できます。
<?php
session_start();
は記述されていますよね?
    • good
    • 0
この回答へのお礼

>別階層でもセッションは参照できます。

ありがとうございます!!

>session_start();
>は記述されていますよね?
はい。
「openpne」というSNSをテストしているところなので、もしかしたら、そのセッションが特殊なのかもしれません。
これから調べてみます。

ありがとうございます!!

お礼日時:2008/01/21 22:22

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