Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/16: Рейтинг темы: голосов - 16, средняя оценка - 4.63
1 / 1 / 2
Регистрация: 24.10.2012
Сообщений: 72

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

02.02.2015, 01:36. Показов 3381. Ответов 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)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.02.2015, 01:36
Ответы с готовыми решениями:

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

Как правильно подключать include?
Доброго вечера суток господа. Подскажите что я делаю не так? Есть два файла config.php и login.php &lt;?php $MySQL_HOST =...

Как правильно подключать файлы с классами
Когда имеется куча файлов с классами, которые взаимодействуют друг с другом, как их правильно подключать? Пихать кучу require в индекс...

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

Решение

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

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
368 / 406 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
02.02.2015, 01:53
../Form/languages/common.php
0
1 / 1 / 2
Регистрация: 24.10.2012
Сообщений: 72
02.02.2015, 02:03  [ТС]
Я немного опечатался:

Вот пути:


C:\UwAmp\www\Project_Name

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

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

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

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

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

PHP
1
$lang_file = 'lang.en.php';
0
368 / 406 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
02.02.2015, 02:08
Цитата Сообщение от 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
1 / 1 / 2
Регистрация: 24.10.2012
Сообщений: 72
02.02.2015, 02:21  [ТС]
Оно выводит ошибки, пишет что не найдены файлы, но не пишет причин, или по каким путям он пытется получить доступ к файлам.

Добавлено через 11 минут
Спасибо всем за быстрые ответы, помогло банальное ../
0
1030 / 682 / 297
Регистрация: 04.04.2013
Сообщений: 2,751
03.02.2015, 11:47
Tachi, после DOCUMENT_ROOT указывайте путь к файлу от корня.
PHP
1
include_once $_SERVER["DOCUMENT_ROOT"] . '/php/languages/common.php';
1
930 / 846 / 190
Регистрация: 28.11.2013
Сообщений: 3,621
03.02.2015, 12:16
Вопрос был про то, как правильно. А банально, тупо и т.п. – это скорее всего неправильно. Самый правильный вариант назвал Poznakomlus.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.02.2015, 12:16
Помогаю со студенческими работами здесь

Как правильно подключать заголовочные файлы?
прошу более продвинутых прогеров чем я найти и/или сделать ту библиотеку которая включает функции ниже. iostream: cin cout ...

Как правильно подключать файлы и библиотеки.
Может я плохо ищу, а может действительно очень много информации как, но нет как правильно. Я пользуюсь Atmel Studyo 7. Вопрос. Как...

Как правильно подключать с. h. файлы к проекту в KEIL 5?
Не могу понять как правильно подключать с. и h. файлы к проекту в KEIL 5. После создания проекта я беру и ложу в папку проекта src ...

как подключать файлы через SSH
как работать с SSH вроде знаю (выполнение скриптов по расписанию) а вот как подсключать файлы с удалённого хоста первый раз слышу ...

Rак правильно подключать файлы с шаблонами
Доброго времени суток! Есть код: main.cpp #include &lt;iostream&gt; #include &lt;string&gt; #include &quot;cls.h&quot; using std::string; ...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru