MySQL INSERT, ON DUPLICATE KEY UPDATE

265
14 ноября 2020, 14:30

В БД 4 поля

id(int), 
id_session(varchar), 
id_goods(int), 
quantity(int)
INSERT INTO basket 
  (id_session, id_goods) 
VALUES 
  ('{$_COOKIE['PHPSESSID']}', '{$_POST['id']}') 
ON DUPLICATE KEY UPDATE quantity = quantity + 1"

При повторной записи хочу увеличивать значение на единицу, но в итоге получаю задвоение записи. Где я неправ?

Answer 1

Во первых не стоит вставлять значения из куки и $_POST напрямую в базу, а ошибка вот

INSERT INTO basket (id_session, id_goods) VALUES ('{$_COOKIE['PHPSESSID']}', '{$_POST['id']}') ON DUPLICATE KEY UPDATE basket SET quantity = quantity + 1
READ ALSO
Как хранить баланс пользователя в MySQL?

Как хранить баланс пользователя в MySQL?

Интересует, как хранить баланс пользователей в MySQL? Если во FLOAT, то он округляется и значения постоянно получаются неправильныеПробовал типы...

170
MySQL server has gone away (host vs ip)

MySQL server has gone away (host vs ip)

Тема мусолилась много еще с древних времен, когда на мамонтов ходили с копьями

151
Bootstrap calendar is open by default

Bootstrap calendar is open by default

How to make the calendar call by default already open as in the photo

4613
Как поместить текст по центру внутри group в svg?

Как поместить текст по центру внутри group в svg?

Как поместить текст по центру внутри g?

3970