• 締切済み

セッション部分のインクルード

お世話になっております。 PHPを使ったHTMLページを作成しているのですが、 セッション部分がうまく動きません。 index.phpページの一番上部に、 <?php include "http://www.○○○.com/lib/include/base.php"; ?> というように記述し、 base.phpには、 <?php session_start(); if(!isset($_SESSION["ses_ref"])){ $_SESSION["ses_ref"]= $_SERVER["HTTP_REFERER"]; } と記述しております。 セッション部分をインクルードせずに直接index.phpに記述した場合は、きちんと動くのですが、インクルードすると動きません。 (変数を取得できません。) セッション部分をインクルードすることはできないのでしょうか。 ご教授くださると非常にありがたいです。 よろしくお願いいたします。

みんなの回答

回答No.1

考えられる原因としては 1.リファラーが取得できていない(リファラーは必ずしも取得できる物ではありません) 2.参考URLに載せたようにphp.iniの設定でURLでの指定が有効になっていない などが考えられると思います。 おそらく、2が原因かとは思いますが・・ 基本「include」、「require」などは特別な理由が無い限りローカルパスで記述した方が良いと思いますよ。

参考URL:
http://php.benscom.com/manual/ja/ref.filesystem.php#ini.allow-url-fopen
azuta0826
質問者

お礼

ご回答ありがとうございます。 インクルードの指定をローカルパスに切り替えたところうまくいきました。 とても助かりました。 ありがとうございました。

関連するQ&A