Доступ к базе данных sqlite, которая размещена локально на сервере - PullRequest
1 голос
/ 19 декабря 2011

Я занимаюсь разработкой приложения php, которое должно запрашивать базу данных sqlite, которая не находится в папке www. Я использую следующий код для подключения.

$db = sqlite_open($path, 0666, $sqliteerror);

но есть какая-то ошибка. Мое приложение находится в разделе httpdocs. так как я могу указать путь к моей БД?

$path='/srv/smartfox/Server/db/myDB.sqlite';

Ответы [ 3 ]

1 голос
/ 19 декабря 2011

Проверьте следующее:

  • Процесс PHP должен иметь доступ на чтение к файлу базы данных.
  • Процесс PHP должен иметь доступ на запись к файлу и вложенной папки, если вы пытаетесь записать в базу данных (Sqlite может понадобиться, даже если вы не пишете, но я ' я не уверен в этом).
  • Возможно, у вас не включено расширение Sqlite. Проверьте это с phpinfo().

Попробуйте это:

  • Включите ведение журнала ошибок, чтобы увидеть, какую ошибку вы получите.
  • Попробуйте получить доступ к базе данных внутри вашей папки httpdocs. Это работает?
  • Используйте PDO для подключения к базе данных.
0 голосов
/ 20 декабря 2011

Просто проверьте корневой каталог для вашего скрипта: $ _ SERVER ["DOCUMENT_ROOT"] и затем выберите путь для файла sqlite. Я думаю, что может быть проблема относительно пути. Если ваш элемент управления находится в каталоге 'www', используйте:

$path = 'srv/smartfox/Server/db/myDB.sqlite';

Надеюсь, это сработает !!!

0 голосов
/ 19 декабря 2011

Поместив путь между апострофами:

$path='/srv/smartfox/Server/db/myDB.sqlite';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...