2015-09-01 2 views
0

Я пробовал все ниже, даже пытаюсь использовать require, но ничего не работает.Как включить/потребовать файл php в php-файле на сервере bluehost

<?PHP include "myfile.php"; ?> 
<?PHP include "/myfile.php"; ?> 
<?PHP include "./myfile.php"; ?> 
<?PHP include(__DIR__,"myfile.php"); ?> 
<?PHP include "/public_html/myfile.php"; ?> 

Все мои файлы на синем хост-сервере, и всякий раз, когда это происходит в том месте, где объект создается из myfile.php (который находится в директории public_html) дает [01-Sep-2015 20:56:07 America/Denver] PHP Warning: include(): Failed opening '/MyConnection.php' for inclusion (include_path='.:/usr/php/54/usr/lib64:/usr/php/54/usr/share/pear:/home1/user/public_html') in /home1/user/public_html/myfile.php on line 29 [01-Sep-2015 20:56:07 America/Denver] PHP Fatal error: Class 'MyConnection' not found in /home1/user/public_html/myfile.php on line 32.

Я отлаживал свой код, каждое утверждение работает отлично, если до или до тех пор пока не связано с myfile.php, а также этот код работает нормально на моем сервере wampp с локальными файлами. Любая помощь будет чрезвычайно оценена. Спасибо.

+0

Не '500' статус означает, что проблема с самим файлом? – camelCase

+0

Может также выполнить проверку синтаксиса файла ... или попытаться получить доступ непосредственно из командной строки. @PaulCrovella имеет правильную идею, она должна была вызвать ошибку. – camelCase

+0

Он отлично работает на моем компьютере (локальном) и включает файл на странице php, но он здесь не работает. Спасибо, что ответили ребятам –

ответ

0

Использование

<?PHP include "var/www/public_html/myfile.php";

+2

Не могли бы вы объяснить, почему этот ответ работает? –

+0

Это работает, так как это абсолютный путь к файлу, включенному – Nazim

+0

. Это не работает. –

1

Как сказал Павел в комментарии, вам необходимо проконсультироваться в любое время, журнал ошибок вы получите ошибку 500 с PHP.

Тем не менее, вы используете абсолютные пути, когда префикс с /, и я на 99% уверен, что вас не должно быть.

<?PHP include "/myfile.php"; ?> 

Это означает, что вы на самом деле пытаетесь читать myfile.php из / директории сервера. Это не то же самое, что использовать веб-корневой каталог с HTML.

Вы должны использовать относительные пути или использовать полный абсолютный путь. Обратите внимание, что __DIR__ НЕ имеет суффикса разделителя каталогов в большинстве случаев (если это не корневая директория).

<?PHP include(__DIR__,"myfile.php"); ?> 

должно быть:

<?PHP include(__DIR__, DIRECTORY_SEPARATOR, "myfile.php"); ?> 

Вы также можете изменить включаемые путь. Обратиться к документации по get_include_path и set_include_path.

+0

' 'даже не работает, он фактически не загружал всю страницу. –

+0

Затем выполните некоторую отладку, проверьте свой журнал ошибок, распечатайте '(__DIR__, DIRECTORY_SEPARATOR,« myfile.php »)' – Devon

+0

Я проделал отладку, и это показывает, что все, что связано с включением файла, вызывает проблемы, отдых совершенно прекрасен. –

0

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

if(!defined('ABSPATH')){ define('ABSPATH', dirname(__FILE__) . '/'); } 
include(ABSPATH . 'filename.php'); 
+0

Не работает, дает тот же результат, что и ' ' –

+0

Дайте ошибку' [01-Sep-2015 21:18:10 America/Denver] PHP Примечание: Неопределенный индекс: pageState в /home1/user/public_html/myfile.php в строке 13 [01-сент.- 2015 21:18:13 America/Denver] Ошибка паролей PHP: ошибка синтаксиса, неожиданный «var» (T_VAR), ожидающая переменная (T_VARIABLE) в /home1/user/public_html/includefile.php в строке 3' –

1

Попробуйте использовать абсолютный путь

<?php include ($_SERVER['DOCUMENT_ROOT']."/myfile.php"); ?> 
+0

Не работает : '(@Sagar –

+0

@aswadsohail Что произошло .. –

+0

Он вел себя так же, как вышеупомянутый код в вопросе. :( –

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