Сделал скрипт который проверяет вошел ли человек в лк или нет. Но выдает ошибку Код (Text): Warning: include(/script/reroll/inc/login.php): failed to open stream: No such file or directory in C:\server\OpenServer\domains\shaiya.ru\script\reroll\index.php on line24 Warning: include(/script/reroll/inc/login.php): failed to open stream: No such file or directory in C:\server\OpenServer\domains\shaiya.ru\script\reroll\index.php on line24 Warning: include(): Failed opening '/script/reroll/inc/login.php' for inclusion (include_path='.;c:/server/openserver/modules/php/PHP-5.5;c:/server/openserver/modules/php/PHP-5.5/PEAR/pear') inC:\server\OpenServer\domains\shaiya.ru\script\reroll\index.php on line 24 Вот сам скрипт, файл есть в директории inc. Строки с 19 по 32 Код (Text): <?php // включить сеанс // если пользователь не вошел в, загрузить страницу Войти if (empty($_SESSION['UserUID'])){ $back = 'reroll/'; include('/script/reroll/inc/login.php'); exit; } else { // игрок вошедшего в $userUID = $_SESSION['UserUID']; include('script/reroll/inc/pdoConnect.php'); // подключиться к базе данных с использованием PDO include("/script/reroll/inc/functions.php"); // вспомогательные функции (контроллеры) ?>
проверь - это частая ошибка login.php Login.php lOgin.php это разные файлы .. возможно гдето большая буква или буква о русская --- Добавлено --- имеется ввиду смотри в каталоге как файл называется реально
Так всё проще. Поскольку путь начинается с /, линукс ищет файл от корня файловой системы, принимая путь за абсолютный. И посылает тебя нах.., поскольку такого файла от корня нету. Можно убрать просто эту палку, и тогда будет читаться от текущего каталога, но я предпочитаю не полагаться на то, какой каталог установит машина, а использовать встроенную константу __DIR__ для получения каталога, в котором лежит файл. Например, так: Код (PHP): include(__DIR__ . '/script/reroll/inc/login.php'); Ну конкретная строка - надо смотреть, как соотносятся каталоги в реале.
Без разницы. php, фактически, на винде преобразует / в \ в путях. Когда путь начинается с \, в Windows это тоже означает "От корня текущего диска". Ну и потом, всё равно же вы на Linux рабочий вариант перенесёте, скорее всего
Код (Text): Warning: include(C:\server\OpenServer\domains\shaiya.ru\script\reroll/script/reroll/inc/login.php): failed to open stream: No such file or directory in C:\server\OpenServer\domains\shaiya.ru\script\reroll\index.php on line 24 Warning: include(C:\server\OpenServer\domains\shaiya.ru\script\reroll/script/reroll/inc/login.php): failed to open stream: No such file or directory in C:\server\OpenServer\domains\shaiya.ru\script\reroll\index.php on line 24 Warning: include(): Failed opening 'C:\server\OpenServer\domains\shaiya.ru\script\reroll/script/reroll/inc/login.php' for inclusion (include_path='.;c:/server/openserver/modules/php/PHP-5.5;c:/server/openserver/modules/php/PHP-5.5/PEAR/pear') in C:\server\OpenServer\domains\shaiya.ru\script\reroll\index.php on line 24 Вот что из этого получилось) --- Добавлено --- Код (Text): Warning: dirname() expects exactly 1 parameter, 2 given in C:\server\OpenServer\domains\shaiya.ru\script\reroll\index.php on line 24 Warning: include(/script/reroll/inc/login.php): failed to open stream: No such file or directory in C:\server\OpenServer\domains\shaiya.ru\script\reroll\index.php on line 24 Warning: include(/script/reroll/inc/login.php): failed to open stream: No such file or directory in C:\server\OpenServer\domains\shaiya.ru\script\reroll\index.php on line 24 Warning: include(): Failed opening '/script/reroll/inc/login.php' for inclusion (include_path='.;c:/server/openserver/modules/php/PHP-5.5;c:/server/openserver/modules/php/PHP-5.5/PEAR/pear') in C:\server\OpenServer\domains\shaiya.ru\script\reroll\index.php on line 24 Ошибка --- Добавлено --- Вот сам скрипт с 19 по 32 строку Код (Text): <?php // включить сеанс // если пользователь не вошел в, загрузить страницу Войти if (empty($_SESSION['UserUID'])){ $back = 'reroll/'; include( dirname ( __FILE__, 3 ) . '/script/reroll/inc/login.php'); exit; } else { // игрок вошедшего в $userUID = $_SESSION['UserUID']; include('script/reroll/inc/pdoConnect.php'); // подключиться к базе данных с использованием PDO include("/script/reroll/inc/functions.php"); // вспомогательные функции (контроллеры) ?>
А вы просто код копируете... Если сам скрипт в script/reroll (не заметил этого сообщения, когда писал первый ответ), тогда Код (PHP): include(__DIR__ . "/inc/login.php"); dirname ( __FILE__, 3 ) не сработало, поскольку второй параметр появился в php 7. Опять же, если бы заглянули в документацию, там бы вы это нашли