2017-01-30 2 views
0

У меня есть эта ошибка:require_once не удалось не удалось открыть поток: Нет такого файла или каталога

Warning: require_once(../questionTypes/Question.php): failed to open stream: No such file or directory in /home/u949913003/public_html/includes/essential.php on line 25

Fatal error: require_once(): Failed opening required '../questionTypes/Question.php' (include_path='.:/opt/php-5.6/pear') in /home/u949913003/public_html/includes/essential.php on line 25

Я требую essential.php от New_test.php, как это:

require_once('../essential.php'); 

Тогда в essential.php , я требую Question.php так:

require_once($config['systemQuestionTypesClassDir'].'Question.php'); 

$config определяется в config.php:

$config['controller']['a'] = 'Admin'; 
$config['controller']['e'] = 'Teacher'; 
$config['controller']['t'] = 'Teacher'; 
$config['controller']['s'] = 'Student'; 
$config['controller']['at'] = 'Teacher'; 
$config['controller']['er'] = 'Teacher'; 
// System directories 
$config['systemControllersDir'] = '../controllers/'; 
$config['systemQuestionTypesClassDir'] = '../questionTypes/'; 
$config['systemViewsDir'] = '../views/'; 
$config['systemLibsDir'] = 'libs/'; 
$config['systemLangsDir'] = 'langs/'; 
$config['systemQuestionTypesLibDir'] = $config['systemLibsDir'].question; 
$config['systemLangsXml'] = '../resources/languages/'; 
$config['systemExtraDir'] = = 'extra/'; 
$config['systemFpdfDir'] = 'fpdf/'; 
$config['systemPhpGraphLibDir'] = 'phpgraphlib—master/'; 
$config['systemFileManagerDir'] = 'filemanager/'; 

Мои папки структура такова:

enter image description here

Очевидно, что в questionTypes есть Question.php.

Я не знаю, как это решить.

+0

попробовать:. require_once (имя_директории (/ __ FILE/__) '/ .. /essential.php '); (обратите внимание: в FILE нет обратных косых черт) – sadlyblue

+0

, который дает ту же ошибку –

ответ

1

Вызов «включить» из другого «включить» может вызвать проблемы при относительных путях. Если вы используете абсолютный путь, это не должно быть проблемой.

Вы можете использовать __DIR__, чтобы получить каталог, содержащий файл, где это написано.

Я думаю, что это должен работы:

Файл: New_test.php

require_once(__DIR__ .'/../essential.php'); 

Файл: essential.php

require_once(__DIR__ .'/../questionTypes/Question.php'); 
+0

Проблема в том, что я не могу изменить файл essential.php, я могу работать только с New_test.php, потому что файл essential.php связан с сайтом что на самом деле работают –

Смежные вопросы