claygod
Новичок
Закинул на хостинг скрипт. Под Денвером работает.ю однако на сервере отказывается. Проблема в работе с SQLite3. Может ли быть такое, что на локали чуть более современная версия базы 3.7 не совместима с серверной 3.6 ?
Код ниже, в комментариях ответы сервера. Возможно, глаз замылился, и ответ на поверхности, просьбы подсказать, в чём ошибка.
При формировании простого запроса через query вроде бы всё ОК, а вот с prepare что-то не хочет..
Код ниже, в комментариях ответы сервера. Возможно, глаз замылился, и ответ на поверхности, просьбы подсказать, в чём ошибка.
При формировании простого запроса через query вроде бы всё ОК, а вот с prepare что-то не хочет..
PHP:
if(!file_exists($this->conf['file_sqlite_db_path'])) {
exit('no file DB!' . $this->conf['file_sqlite_db_path']);
} else {
print 'file DB ' . $this->conf['file_sqlite_db_path'] . ' OK <br>';// пишет "file DB!package/Paper/Data/Sqlite/article.db OK"
}
$this->obj->db = new SQLite3($this->conf['file_sqlite_db_path']);
var_dump($this->obj->db); // пишет "object(SQLite3)#19 (0) { }"
if(!$this->obj->db) {
exit ('error db');
} else {
print 'db OK!' . time() . '<br>'; // пишет db OK!1435055032
// вариант с простым QUERY
$query = 'SELECT * FROM author'; var_dump($query); print '<br>'; // пишет string(20) "SELECT * FROM author"
$this->obj->db->exec($query);
// вариант с prepare
$stmt = $this->obj->db->prepare('SELECT * FROM author'); var_dump($stmt); print '---<br>'; // пишет bool(false)
$result = $stmt->execute(); var_dump($result); print 'Ky-Ky<br>'; // ничего не пишет
while ($row = $result->fetchArray(SQLITE3_ASSOC)) {
// тут будем обрабатывать результат
}
}