Не могу включить мои файлы - PullRequest
1 голос
/ 19 февраля 2012

Я пытаюсь включить свои файлы, но по какой-то причине не могу ...

Вот моя структура:
enter image description here

На index.php есть include_once('includes/php/inc.php');. inc.php содержит следующие строки:

// Required classes 
require_once '../classes/cl_calendar.php';

Я думаю, что он абсолютно правомерен, но почему-то все, что я получаю, это ошибка:

Warning: require_once(../classes/cl_calendar.php): failed to open stream: No such file or directory in /customers/xxx/xxx/httpd.www/new/extra/php/inc.php on line 14 Fatal error: require_once(): Failed opening required '../classes/cl_calendar.php' (include_path='.:/usr/share/php') in /customers/xxx/xxx/httpd.www/new/extra/php/inc.php on line 14

Что делает эту ошибку отображаемой и как от нее избавиться?

Ответы [ 3 ]

1 голос
/ 19 февраля 2012

Правильный путь включает в себя / classes / file.php.Почему ..?Это приведет вас на один уровень выше уровня корня.

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

1 голос
/ 19 февраля 2012

Когда вы включаете php-файл из другого, это все равно, что брать содержимое этого файла и помещать его в исходный (index.php) файл. Поэтому, когда вам требуется больше файлов из файла inc.php, он основан на пути к исходному файлу. Попробуйте установить базовый путь в файле index.php и использовать его в файле inc.php. Попробуйте

// index.php
$base = "/var/www/htdocs/";  
// or something like dirname(__FILE__) if it may change
include_once($base.'includes/php/inc.php');

// inc.php
require_once($base.'classes/cl_calendar.php');
0 голосов
/ 19 февраля 2012

Просто перетащите эту страницу cl_calendar.php на свою страницу index.php, и она отобразится как ссылка href, а затем просто скопируйте полный путь href и вставьте его как есть в include.

или попробуйтеэтот

require_once(/../classes/cl_calendar.php);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...