2013-08-17 5 views
0

У меня есть файл menu.php, который мне нужно включить в каждую страницу на сайте, который я создаю. Когда я открываю menu.php сам по себе, он отлично работает. Это когда я включил его в другие файлы, такие как index.php, тогда ничего не загружается.PHP include Statement Issue

Ниже приведено мое содержание index.php. Мой menu.php - это строго html, связанный с листом .css. Я искал и не могу найти ничего, чтобы решить мою проблему. Какие-либо предложения?

<html> 
<head> 
    <!-- ... --> 
</head> 
<body> 
    <?php include 'menu.php'; ?> 
</body> 
</html> 

EDIT: это menu.php в include, а не header.php.

+0

все ваши файлы в одной папке? –

+0

Да, они есть. Извините, забыл упомянуть об этом. –

+0

Доза расширения вашего индекса - '.php' или' .html'? –

ответ

-1

Проверьте путь, место включения и т.д.

Например, если файл находится в определенной папке включает в себя файл, который также включает в себя еще один файл .. относительный путь всегда основывается на очень оригинальный файл открыт ,

Что я делаю:

include $_SERVER['DOCUMENT_ROOT'].'/menu.php'; // if file is at /public_html/menu.php 

или

include $_SERVER['DOCUMENT_ROOT'].'/includes/menu.php'; // if file is at /public_html/includes/menu.php 

этак независимо от того, где вы открываете из, вы вызываете абсолютный путь.

+0

И не забудьте запустить путь к файлу/папке с косой чертой (/) после $ _SERVER ['DOCUMENT_ROOT'], потому что эта переменная останавливается в имени папки без конечной косой черты (/). – jeffkee

+1

Вы действительно должны привыкнуть использовать '__DIR__' вместо DOCUMENT_ROOT. Это позволит вам запустить сайт в подкаталоге для целей разработки и не будет зависеть от конфигурации сервера. –

+0

Хороший совет Andrew. Сделаю. –

0

Позвольте мне попытаться объяснить, как каталоги работы:

ROOTFOLDER--

home.html

contact.html

PHPFOLDER ---

header.php

CSS -----

stylesheet.css

если в home.html у вас есть <?php include 'header.php';?>, что не будет работать, потому что заголовок в PHPFOLDER так что вы должны <?php include 'folderphp/header.php';?>