Ошибка в SQL запросе при добавлении записи PDO

316
28 января 2017, 09:54
if (!empty($_POST['message']) && !empty($_POST['user_name']))
{
    $name = $_POST['user_name'];
    $text = $_POST['message'];
    $product = (is_numeric($_POST['product']) && !empty($_POST['product'])) ? $_POST['product']:NULL;
    $sql = "INSERT INTO `user277145_jess`.`otzivi` (`id`, `name`, `text`, `product`, `time`) VALUES (NULL, ':name', ':text', :product, ".time().";";
    //die($sql);
    $resutl = $mysql->query($sql, [':name'=> $name, ':text' => $text, ':product' => $product]);
}

Вот ошибка:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 1

Можете мне пальцем ткнуть где ошибка у меня ?

Answer 1
  1. Вам не нужно обрамлять параметры апострофами
  2. Вам нужно закрыть скобку после VALUES
$sql = "INSERT INTO `user277145_jess`.`otzivi` (`id`, `name`, `text`, `product`, `time`) VALUES (NULL, :name, :text, :product, ".time().");";
READ ALSO
В боевом режиме виснет сортировка по дате

В боевом режиме виснет сортировка по дате

В локале полный дамп базы - все летаетНа хостинге висим в глушняк (504я)

257
Как скрыть консоль обновления mysql?

Как скрыть консоль обновления mysql?

Каждый день при обновлении mysql вижу как она при этом распахивает окно и запускает терминал с выводом своего логаПросмотрел её настройки ничего...

393
Что не так с MySQL

Что не так с MySQL

Имею такую таблицу заказов: При каждом посещении сайта, выполняется такой запрос:

378
Универсальный метод Java с параметрами

Универсальный метод Java с параметрами

Есть класс MyGeneric<T> с полем aНужно создать метод public T Add(T obj) который реализует сумму Integer и конкатенацию строк String

506