Когда вы включаете файл, вы можете:
1- Укажите полный путь для этого файла (начинается с /
)
Например
require '/var/www/html/site-name/site/lib/inc/connection.php' or die ("Cannot find the proper configuration file.");
Отметьте, что /var/www/site-name/site/lib/
part? Это составлено для этого примера. Реальный абсолютный путь зависит от сервера и где находятся нужные папки.
2- Укажите относительный путь для этого файла (начинается с имени папки или файла)
Например
require '../inc/connection.php' or die ("Cannot find the proper configuration file.");
Использование относительного пути означает, что вы, начиная с папки, в которой код действительно существует. Например, путь: 'connection.php'
означает, что connection.php
находится в той же текущей папке.
Специальные имена .
и ..
означают текущий и родительский каталог/папки соответственно. Таким образом, чтобы включить файл с именем connection.php
, который находится в родительской папке, где код, вызывающий его, вы можете настроить его на ../connection.php
.
Таким образом, чтобы исправить вашу проблему, вам нужно определить, где именно этот файл пытается настроить таргетинг относительно. И похоже, что текущий путь начинается с .
, что означает текущую папку (что не имеет смысла).
Легко предположить, что он должен был быть ..
вместо .
, но не обязательно в этом случае. Файл мог быть перемещен с момента реализации этого кода или изменилось имя папки, например inc
.
'require __DIR__. "/inc/connection.php"; 'и если он все еще не работает, выполните' echo __DIR__. "/inc/connection.php"; 'и убедитесь, что это на самом деле правильный путь. – Bailey
В стороне: As * require * всегда вызывает фатальную ошибку, когда файл не найден, * die * никогда не будет вызван и поэтому не нужен. –