LINUX.ORG.RU

История изменений

Исправление sanwashere, (текущая версия) :

В общем, логика PHP в вашем случае такая:
1. Вызов из веб http://xofficer.ru/public_html/services/monitoring-content-changes/avito-chec...
CWD = ~/xofficer.ru/public_html/services/monitoring-content-changes
new PDO(«sqlite:data.db») ищет в рабочем каталоге (CWD) => ~/xofficer.ru/public_html/services/monitoring-content-changes/data.db

Файл есть, таблица есть. Соответственно SQLite при prepare() видит таблицу и даёт $st (!== FALSE).

2. Вызов из крон с тем же пользователем ~/xofficer.ru/public_html/services/monitoring-content-changes/avito-checker.php:
CWD = ~
new PDO(«sqlite:data.db») ищет в рабочем каталоге (CWD) => ~/data.db

На первый раз файла нет, так что создаём новую пустую БД без таблиц. Соотвественно SQLite при prepare() не видит таблицы и не даёт вам $st (=== FALSE).

Исправление sanwashere, :

В общем, логика PHP в вашем случае такая:
1. Вызов из веб http://xofficer.ru/public_html/services/monitoring-content-changes/avito-chec...
CWD = ~/xofficer.ru/public_html/services/monitoring-content-changes
new PDO(«sqlite:data.db») ищет в рабочем каталоге (CWD) => ~/xofficer.ru/public_html/services/monitoring-content-changes/data.db
Файл есть, таблица есть. Соответственно SQLite при prepare() видит тиблицу и даёт $st (!== FALSE).

2. Вызов из крон с тем же пользователем ~/xofficer.ru/public_html/services/monitoring-content-changes/avito-checker.php:
CWD = ~
new PDO(«sqlite:data.db») ищет в рабочем каталоге (CWD) => ~/data.db
На первый раз файла нет, так что создаём новую пустую БД без таблиц. Соотвественно SQLite при prepare() не видит таблицы и не даёт вам $st (=== FALSE).

Исправление sanwashere, :

В общем, логика PHP в вашем случае такая:
1. Вызов из веб http://xofficer.ru/public_html/services/monitoring-content-changes/avito-chec...
CWD = ~/xofficer.ru/public_html/services/monitoring-content-changes
new PDO(«sqlite:data.db») ищет в рабочем каталоге (CWD) => ~/xofficer.ru/public_html/services/monitoring-content-changes/data.db
Файл есть, таблица есть. Соответственно SQLite при prepare() видит тиблицу и даёт $st (!== FALSE).
2. Вызов из крон с тем же пользователем ~/xofficer.ru/public_html/services/monitoring-content-changes/avito-checker.php:
CWD = ~
new PDO(«sqlite:data.db») ищет в рабочем каталоге (CWD) => ~/data.db
На первый раз файла нет, так что создаём новую пустую БД без таблиц. Соотвественно SQLite при prepare() не видит таблицы и не даёт вам $st (=== FALSE).

Исходная версия sanwashere, :

В общем, логика PHP в вашем случае такая:
1. Вызов из веб //xofficer.ru/public_html/services/monitoring-content-changes/avito-checker.php:
CWD = ~/xofficer.ru/public_html/services/monitoring-content-changes
new PDO(«sqlite:data.db») ищет в рабочем каталоге (CWD) => ~/xofficer.ru/public_html/services/monitoring-content-changes/data.db
Файл есть, таблица есть. Соответственно SQLite при prepare() видит тиблицу и даёт $st (!== FALSE).
2. Вызов из крон с тем же пользователем :
CWD = ~
new PDO(«sqlite:data.db») ищет в рабочем каталоге (CWD) => ~/data.db
На первый раз файла нет, так что создаём новую пустую БД без таблиц. Соотвественно SQLite при prepare() не видит таблицы и не даёт вам $st (=== FALSE).