2014-01-09 4 views
0

Внезапно этот сайт перестанет работать, и это ошибки появились:CakePHP предупреждения показывая include_once

Предупреждение: include_once (/// контроллеры/сайт/default.php) [function.include-раз]: не удалось открыть поток: Нет такого файла или каталога в /var/www/html/sitename.com/web/index.php на линии

Предупреждение: include_once() [function.include]: Failed открытие '///controllers/site/default.php' для включения (include_path = '.:/usr/share/pear') в /var/www/html/sitename.com/web/index.php на линии

Я не знаю, как работает CakePHP, поэтому мне нужна помощь, чтобы выяснить, что произошло (без любого испортить код). Указанные файлы, в которых говорится, что их нет (нет такого файла или каталога), точно описаны в этом пути.

Я ценю любую помощь!

Ошибка из линии 54 в index.php:

include_once sprintf('%s/%s%s/%s.php', ROOT_PROJECT, CONTROLLERS_DIR, $url->tipo, 'default'); 
+0

Каков код, генерирующий проблему? (index.php line 54) – Fyntasia

+0

Извините, я забыл процитировать это. Просто отредактировал код. – Anna

+0

'/// controller/site/default.php' - неправильный путь. Возможно, ваша проблема происходит из-за '% s'es пусты? – Zlatan

ответ

0

Я считаю, что проблема заключается в переменных, вставленных через Sprintf.

Есть некоторые пустые, вызывающие много обратных косых черт, которые нужно добавить в строку;

В основном это говорит

include('///controllers/site/default.php'); 

(Это также видно в сгенерированном предупреждении PHP)

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

Если я прав следующая команда PHP должна работать:

include('/controllers/site/default.php'); 

Надеется, что это помогает.

+0

Fyntasia, как именно я должен это делать? – Anna

+0

Это на самом деле очень зависит от остальной части вашего кода. Я не знаю, что происходит в остальной части вашего кода, и я не знаю, какие переменные поступают откуда. Вы можете проверить каждую переменную отдельно с помощью простой (пустой ($ var)) и убедиться, что она не создает дополнительную обратную косую черту. – Fyntasia

+0

Когда я непосредственно набираю «controllers/site/default.php» в include, который является правильным путем, он показывает пустую страницу ... – Anna

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