phpの文法について教えて下さい。


webページを作っています。
hoge.phpというファイルに以下のように記述しました。
----------------------------------------
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?php include "header.php" ?>
<body>本文</body>
</html>
----------------------------------------
当初header.phpと同階層に置いていたこのhoge.phpを、
同じ階層に有るmainというフォルダの中に入れたいと思います。
ソースを変えずに移動させたところ、ブラウザでヘッダー(header.php部分)が表示されなくなってしまいました。
<?php include "header.php" ?>の部分を変更しなければいけないように思うのですが、
ヘッダーが表示(include)されるようにするには、どのように記述すれば良いのでしょうか?
どうぞよろしくお願いします。

回答の条件
  • 1人2回まで
  • 13歳以上
  • 登録:2010/12/01 19:52:03
  • 終了:2010/12/01 23:09:27

回答(2件)

id:windofjuly No.1

うぃんど回答回数2625ベストアンサー獲得回数11492010/12/01 20:04:23

ポイント35pt

hoge.phpからは1つ上の親フォルダにheader.phpがあることになるので下記のようになります

以前
header.php
hoge.php
<?php include "header.php" ?>
ファイル移動後
header.php
main/hoge.php
<?php include "../header.php" ?>

.. と書くと親フォルダの意味になります

id:taramonera No.2

taramonera回答回数79ベストアンサー獲得回数52010/12/01 20:33:13

ポイント35pt

header.phpがDocumentRoot直下にあるのであれば、下記のようにすれば良いです。

<?php include $_SERVER["DOCUMENT_ROOT"]."/header.php" ?>

このように書けば、hoge.phpをどのフォルダに入れても

header.phpが表示されます。

  • id:AQUARROWS
    windofjuly様
    迅速で丁寧なご回答を頂きありがとうございます。助かりました。

    taramonera様
    迅速な情報とプラスアルファの知識をありがとうございます。助かりました。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません