Ошибка синтаксиса SQLite3

Статус
Закрыто для дальнейших ответов.

Basicprof

New Member
Регистрация
17.09.2015
Сообщения
5
Подскажите пожалуйста Есть ошибка! http://imgdisk.ru/image/U0C
Что исправить в коде какой запрос применить

Код:

if ($db = new SQLite3('mysqlitedb', 0666, $sqliteerror)) {

$db->exec('CREATE TABLE orders (time date(255), name varchar(255), phone varchar(255))');

$db->exec("INSERT INTO orders (time, name, phone) VALUES ($today, $name, $phone)");

} else {

die($sqliteerror);

}




Если кто может пожалуйста наглядно подскажите как исправить ошибку синтаксиса!
 

Volly

Well-Known Member
Регистрация
21.03.2012
Сообщения
782
23 строка это какая?
 

Basicprof

New Member
Регистрация
17.09.2015
Сообщения
5
23 это
$db->exec("INSERT INTO orders (time, name, phone) VALUES ($today, $name, $phone)");
 

Volly

Well-Known Member
Регистрация
21.03.2012
Сообщения
782
Не числовые значения перед вставкой в базу принято заключать в кавычки.
Попробуйте изменить строку
$db->exec("INSERT INTO orders (time, name, phone) VALUES ($today, $name, $phone)");
на такую
$db->exec("INSERT INTO orders (time, namee, phone) VALUES ('".$today."', '".$namee."', '".$phone."')");
т. е.
сначала одинарная кавычка '
потом двойная "
потом точка .
потом доллар и имя переменной
потом точка .
потом двойная "
потом одинарная кавычка '
 

Volly

Well-Known Member
Регистрация
21.03.2012
Сообщения
782
Пардон, не заметил как у меня лишнее е затесалась.
Пусть будет как было у вас, только кавычки и точки добавить:
$db->exec("INSERT INTO orders (time, name, phone) VALUES ('".$today."', '".$name."', '".$phone."')");
 

Basicprof

New Member
Регистрация
17.09.2015
Сообщения
5
Спасибо отлично!
еще вопрос вот ошибка http://imgdisk.ru/image/UwC
строка 23 это вот эта
$this->_db = new SQLiteDatabase(self::DB_NAME);
что тут исправить можно

причем на локальном сервере работает а на хостинге ошибка
 

Volly

Well-Known Member
Регистрация
21.03.2012
Сообщения
782
Если на хостинге ничего с SQLite не работает, значит это расширение у них не подключено.
А если что-то всё ж работает, то значит настройки разные у сервера дома и у хостера.
Настройки можно сравнить. Для этого создать файл с название test.php с одной строкой:
<? phpinfo() ?>
Положить этот файл на сайте дома и ещё скопировать на хост.
Окрыть их браузером в разных окнах и сравнить настройки касаемые SQLite
 
Статус
Закрыто для дальнейших ответов.
Верх Низ