我有一个数据库。但是,每当我尝试从购物页面向购物车桌面添加产品时,如果经常点击该项目的添加按钮,我会发现同一项目会多次添加到表格中。有没有一种方法,当用户点击特定项目的添加按钮时,如果它已经添加到购物车表格中,则无法再次添加。
请帮助我谢谢。我尝试在PHP中做其他事情,但不能。我需要这个帮助。
答案 0 :(得分:1)
制作主键(cart_id,product_id)。如果用户尝试将现有产品添加到购物车,请增加数量。
create table cart_items (
cart_id int,
product_id int,
quantity int default 1,
primary key (cart_id, product_id)
);
insert into cart_items (cart_id, product_id) values
(1,1)
on duplicate key update quantity = quantity + 1;
insert into cart_items (cart_id, product_id) values
(1,1)
on duplicate key update quantity = quantity + 1;
答案 1 :(得分:0)
您要向其中添加产品的表格的结构是什么?您可以在(userId,productId)列组合上放置唯一索引。这样可以防止同一产品的添加次数超过一次。不过,您可能希望查看Insert... on duplicate key update语法。