Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Почему php не видит файлы?

Алексей Герасимов Ученик (129), на голосовании 9 месяцев назад
есть файл "folder1/folder2/file1.php" и "folder1/folder3/file2.php". при обращении к файлу file1.php из файла file2.php выдает ошибку, что файл не найден. путь: "../folder2/file1.php". не понимаю в чем проблема
Голосование за лучший ответ
бабуин гибонович Просветленный (38214) 10 месяцев назад
Судя по вашему описанию, вы используете относительные пути при обращении к файлам в PHP. Ваше текущее расположение скрипта, вероятно, влияет на то, как PHP видит относительные пути. Вот несколько вещей, которые стоит учесть:

1. **Текущая рабочая директория:** PHP определяет текущую рабочую директорию в зависимости от местоположения запущенного скрипта. Если вы запускаете скрипт из одной папки, а пытаетесь обратиться к файлам в другой, относительные пути могут быть некорректными.

2. **Переходы по директориям:** Ваш путь `../folder2/file1.php` в файле `file2.php` означает "поднимитесь на уровень выше относительно текущей директории и найдите `folder2`". Убедитесь, что текущая директория, из которой запущен `file2.php`, действительно находится в `folder3`, иначе путь будет некорректным.

3. **Относительные пути vs. абсолютные пути:** Использование абсолютных путей (начинающихся с корневой директории) может решить проблему, связанную с текущей рабочей директорией.

Для устранения проблемы:

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

Пример использования абсолютного пути:
 php  
include(__DIR__ . '/../folder2/file1.php'); // __DIR__ - текущая директория скрипта


Если проблема остается, пожалуйста, предоставьте более подробную информацию о структуре файлов и коде, чтобы я мог предоставить более точное решение.
Алексей ГерасимовУченик (129) 10 месяцев назад
здравствуйте! проверил, файлы находятся на своих местах.
при использовании абсолютного пути выходит в корень диска (C:\).

ниже прикрепил скрины как написано и структуру:
Алексей Герасимов Ученик (129) Алексей Герасимов, сам db.php
Похожие вопросы