Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
Tachi
1 / 1 / 2
Регистрация: 24.10.2012
Сообщений: 72
1

Как правильно подключать файлы через include?

02.02.2015, 01:36. Просмотров 721. Ответов 11
Метки нет (Все метки)

Есть основная папка с проектом. В ней находится ещё несколько папок.

В index.php который находится в папке Project_Folder делаю следующий include:

PHP
1
2
3
<?php
include_once 'php/languages/common.php';
?>
И всё нормально подлкючается.

Но вот если делать такой include из файла, который находится например не в папке с проектом, а типо:

Project_Folder/php/pages/someformpage.php

,то такой Include уже не прокатит. Поэтому вопрос, как правильно подключить чтолибо из файла, который находится не напрямую в основной директории, а вподпапке, как в моём случае.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.02.2015, 01:36
Ответы с готовыми решениями:

Включать все файлы в один или подключать отдельно?
Доброе время суток! Назрел вопрос. Я написал ядро Админ-панели к своему...

Не подключается файл через include
Имеем: index.php echo &quot;con_index.php 1&lt;br&gt;&quot;; echo &quot;con_index.php 2&lt;br&gt;&quot;;...

Как удалять файлы через GET запросы?
Привет! Есть код который выводит файлы и позволяет скачать их. Как...

Путь к изображению в другой директории при вызове через include
Приветствую, имеются следующие файлы: images/logo.png pages/photos.php...

Как правильно сделать редирект, через передачу значения в файл?
Подскажите пожалуйста как правильно редирект сделать, через передачу значения в...

11
BarbosLV
363 / 401 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
02.02.2015, 01:40 2
Лучший ответ Сообщение было отмечено Tachi как решение

Решение

../ - Выход из папки.
1
Fedor Vlasenko
Программист Php, Js
Эксперт PHP
817 / 550 / 215
Регистрация: 01.02.2015
Сообщений: 1,690
02.02.2015, 01:50 3
обычно в проектах объявляют именовную константу PATH_ROOT
PHP
1
define('PATH_ROOT', __DIR__ );
а дальше пишут типа
PHP
1
2
<?php
include_once PATH_ROOT . '/languages/common.php';
0
Tachi
1 / 1 / 2
Регистрация: 24.10.2012
Сообщений: 72
02.02.2015, 01:53  [ТС] 4
Вот папка главная:

C:\UwAmp\www\Project_Name

В ней собственно index.php

Потом ещё папки:

C:\UwAmp\www\Form\php
- \languages
- \pages

И если я пытаюсь сделать include внутри файлы из папки \pages файла, который находится в \languages следующим образом:

PHP
1
include_once '../languages/common.php';
Оно пишет, что файл не найден.

Что я делаю не так?

Путь и названия точно правильные.

Добавлено через 2 минуты
А где именно нужно определять этот PATH_ROOT и что в нём должно быть? Просто название папки с проектом?
0
BarbosLV
363 / 401 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
02.02.2015, 01:53 5
../Form/languages/common.php
0
Tachi
1 / 1 / 2
Регистрация: 24.10.2012
Сообщений: 72
02.02.2015, 02:03  [ТС] 6
Я немного опечатался:

Вот пути:


C:\UwAmp\www\Project_Name

В ней собственно index.php

Потом ещё папки:

C:\UwAmp\www\Project_Name\php
- \languages
- \pages
0
Fedor Vlasenko
Программист Php, Js
Эксперт PHP
817 / 550 / 215
Регистрация: 01.02.2015
Сообщений: 1,690
02.02.2015, 02:04 7
Что я делаю не так?
подумай о правильной структуре папок
объявлять PATH_ROOT нужно в точке входа index.php
и ты ведь можешь просмотреть где ошибся
PHP
1
echo PATH_ROOT . '/languages/common.php';
и нормальная среда должна выводить ошибки, используй OpenServer к примеру
0
Tachi
1 / 1 / 2
Регистрация: 24.10.2012
Сообщений: 72
02.02.2015, 02:08  [ТС] 8
Вобщем прокатило так:
В файле из папки pages сделать такой include:

PHP
1
include_once '../languages/common.php';
Но в самом common.php тоже есть includ-ы, и теперь они тоже не работают:

Выглядят они внутри common.php следующим образом:

PHP
1
$lang_file = 'lang.en.php';
0
BarbosLV
363 / 401 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
02.02.2015, 02:08 9
Цитата Сообщение от Tachi Посмотреть сообщение
C:\UwAmp\www\Project_Name
В ней собственно index.php
Потом ещё папки:
C:\UwAmp\www\Project_Name\php
- \languages
- \pages
что это? Вот это путь к index.php:
C:\UwAmp\www\Project_Name\index.php
теперь так же напиши путь к тому файлу который пытаешься подключить.
0
Tachi
1 / 1 / 2
Регистрация: 24.10.2012
Сообщений: 72
02.02.2015, 02:21  [ТС] 10
Оно выводит ошибки, пишет что не найдены файлы, но не пишет причин, или по каким путям он пытется получить доступ к файлам.

Добавлено через 11 минут
Спасибо всем за быстрые ответы, помогло банальное ../
0
Academik
659 / 439 / 171
Регистрация: 04.04.2013
Сообщений: 1,914
03.02.2015, 11:47 11
Tachi, после DOCUMENT_ROOT указывайте путь к файлу от корня.
PHP
1
include_once $_SERVER["DOCUMENT_ROOT"] . '/php/languages/common.php';
1
miketomlin
Заблокирован
03.02.2015, 12:16 12
Вопрос был про то, как правильно. А банально, тупо и т.п. – это скорее всего неправильно. Самый правильный вариант назвал Poznakomlus.
0
03.02.2015, 12:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.02.2015, 12:16

Объясните, как подключать сервис Live Streaming к сайту
Доброго времени суток! Ситуация: Имеется, допустим, хостинг skyparkcdn,...

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

Как правильно сделать include
Всем привет. Научите правильно делать include. имеется основной скрипт с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru