海外旅行から帰ってきたら、まず何を食べる?

php include がどうしてもできません;;;

php、超がつく程初心者です;
Windows7、Internet explorer9、Apache2.2、PHP5.4.6、現在はlocalhost上でphp動作確認、
作業しております。

サイトのメニューをPHPで作成したいと思い色々必死に調べ、htdocsフォルダ直下同士?のphpは何とか表示させることができました。(localhostですが)
しかしhtdocsより下のフォルダに入っているものですと、例え同階層でも表示がされません;

↓のような感じで完全に詰まってしまいました;

htdocs/index.html に htdocs/topmenu.php を表示させる↓
htdocs/index.html内で <?php include(dirname(__FILE__).'/topmenu.php'); ?> → 成功

htdocs/naiyou/naiyou1.html に htdocs/naiyou/menu.php を表示させる↓
htdocs/naiyou1.html 内で <?php include(dirname(__FILE__).'/menu.php'); ?> → 失敗

htdocs/naiyou/naiyou1.html に htdocs/topmenu.php を表示させる↓
htdocs/naiyou1.html 内で <?php include(dirname(__FILE__).'/../topmenu.php'); ?> → やっぱり失敗

htdocsフォルダ直下のみでしかできない設定に私がしてしまっているのでしょうか。
元々直下のみしか表示できないもの…?
それとももっと基本的なところでひかかっているのかな…
何かのパスが間違っているのでしょうか。

htdocsフォルダの場所とDocumentRootは共に
"C:/Program Files (x86)/Apache Software Foundation/Apache2.2/htdocs"
となっています;

知識不足もあり言葉が足りないこと、説明がよく分からないことも多いこともあるかと…すみません。
既出の質問等も探しているのですが同条件を中々見つけられず、もうかれこれ1ヶ月近く解決せず悩んでいます。
申し訳ありませんが、どなたかご教授ください...;

A 回答 (2件)

<?php echo dirname(__FILE__) . '/menu.php'; ?>


としたとき、意図するパスになっていますか?

<?php include 'menu.php'; ?>
でいいような気もしますが。

この回答への補足

ちょ、ま、待ってくださいね、調べます、調べてまた書き込みいたします;

ご回答くださりありがとうございます!

ちょ、ちょ、待ってください;;

本当にありがとうございます!

補足日時:2012/08/23 23:37
    • good
    • 0
この回答へのお礼

随分とお時間いただいてしまい、申し訳ありませんでした。

もう一度見直してみたり、いっそと入れ直したりもしてみたんですが…
なんだか、どうも、難しかったようです。

勉強し直してきます;

アドバイスくださった御二方、お時間くださり本当にありがとうございました!

お礼日時:2012/09/23 00:23

正しいpathを指定すれば、どの位置のファイルでもinclude出来ます



>htdocs/naiyou/naiyou1.html に

と書いているのに

>htdocs/naiyou1.html 内で

とはどういう意味でしょうか?当然のこととしてincludeはhtdocs/naiyou/naiyou1.html に書くと思うのですが・・・。

実際に呼び出しているのは、どちらなのですか?

  http://localhost/naiyou1.html
  http://localhost/naiyou/naiyou1.html
    • good
    • 0
この回答へのお礼

早いお時間にご連絡くださり、本当にありがとうございます。

ごめんなさい、記載間違いです;気づきませんでした;

× htdocs/naiyou1.html内 → ○ htdocs/naiyou/naiyou1.html です;

【訂正↓】
htdocs/index.html に htdocs/topmenu.php を表示させる↓
htdocs/index.html内に <?php include(dirname(__FILE__).'/topmenu.php'); ?>を入力 → 成功

htdocs/naiyou/naiyou1.html に htdocs/naiyou/menu.php を表示させる↓
htdocs/naiyou/naiyou1.html 内に <?php include(dirname(__FILE__).'/menu.php'); ?>を入力 → 失敗

htdocs/naiyou/naiyou1.html に htdocs/topmenu.php を表示させる↓
htdocs/naiyou/naiyou1.html 内に <?php include(dirname(__FILE__).'/../topmenu.php'); ?>を入力 → やっぱり失敗


やはり表示されません…;どうしてだろう;;
php.iniとかhttpd.confのところとかをいじった時に何か間違えたとか?それとも↑のように何か基本的なところでのうっかりミス?あぁあぁああ;

ですが、どの場所でも大丈夫、という確信が持てたことは私にとって非常に大きな前進です。
何日かおいて頭を冷やしてみて、もう一度やってみて、それでもまだできないようなら最悪またApache・phpインストールくらい一からまたちょっとやり直してみようと思います。

それでもどうしてもできないようならまたこちらで伺いたいと思います;

ご回答ありがとうございました!

お礼日時:2012/08/21 21:20

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