Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как правильно подключить Include файлы в PHP? При подключении получаются ошибки, подробнее в описании...

sergei .... Мастер (1368), закрыт 8 лет назад
Создаю сайт, в дереве сайта создал папки ( пишу то, что относится к проблеме ): include, pages. В корне сайта создал Index файл, в нем вывел всю нужную информацию, потом перенес все данные с Header в Header.php, Header.php закинул в Include, далее подключил его в Index файле (пробелы специально сейчас написал): < ?php include( ' / include / header.php ' ); ? >. Обновил страницу, все работает.
Далее создал новый файл в папке Pages и назвал его, к примеру, news.php. После чего открыл файл и подключил в нем Header.php таким образом: < ?php ( ' / include / header.php ' ); ? >. После чего перешел в этот файл: site . domain / news . php, мне вывелись ошибки, мол такого файла нет.
Начал гуглить, нагуглил такой способ, подключать инклюды так: < ?php include $_SERVER['DOCUMENT_ROOT'].( ' / include / header.php ' ); ? >.Все заработало, но на локальном сервере ( на денвере работаю ), думал что все круто, перенес все на WEB, но там данный способ не захотел работать. В итоге, на WEB`е не сработали такие способы подключения include:
< ?php include( ' / include / header.php ' ); ?>
< ?php include( ' include / header.php ' ); ?>
< ?php include $_SERVER['DOCUMENT_ROOT'].( ' / include / header.php ' ); ?>
< ?php include ('http://').$_SERVER['HTTP_HOST'].( ' / include / header.php ' ); ? >
_____
Не работает в файлах, которые находятся в сторонних папках корня, к примеру Pages. В Index все работает, потому что он в корне лежит.
Задолбался уже искать ответы на свой вопрос. Нужна ваша помощь)
Дополнен 8 лет назад
Так же не сработало с: < ?php require_once ( ' /include/header.php ' ); ? >
Лучший ответ
Metotron Искусственный Интеллект (114919) 8 лет назад
Используй относительные пути: include '../../folder/file.php'. Или так: include getcwd().'/../../folder/file.php'. И скобки не используй, это не семантично, потому что include — это не функция, а конструкция языка.
Остальные ответы
Мыслитель (6916) 8 лет назад
< ?php require_once('../include/header.php'); ?>
sergei ....Мастер (1368) 8 лет назад
Все равно ошибка. < ?php require_once ( ' /include/header.php ' ); ? >
Иван Иванов Профи (563) 8 лет назад
попробуй так=) убери нахрен $_SERVER['HTTP_HOST'] и напиши прямой путь и пробелы убери
< ?php include ('http://".$_SERVER['HTTP_HOST']."/include/header.php'); ? >
Похожие вопросы