我需要一些帮助来存储用户购买和下载的文件。我有一个包含文件及其ID的表格。用户购买并归档时,只是将他重定向到下载链接。但是我想让PHP脚本将用户购买的文件ID插入数据库。但是如何处理多个文件并将其ID存储在每个用户的1个字段中。例如,我有10个文件,用户购买了1,2,3,8,9个文件。我想将这些数字存储在数据库中,并花一些时间显示与这些ID对应的链接。
您需要创建具有两列的表user_files
,user_id
和file_id
组成一个复合主键:
CREATE TABLE user_files (
user_id INT NOT NULL,
file_id INT NOT NULL,
PRIMARY KEY (user_id, file_id),
FOREIGN KEY (user_id) REFERENCES users(id),
FOREIGN KEY (file_id) REFERENCES files(id),
);
如果用户1
购买文件1,2,3,8,9
,则可以这样做
INSERT INTO user_files (user_id, file_id) VALUES (1,1), (1,2), (1,3), (1,8), (1,9)
然后,当您需要检查用户是否已购买时,只需检查表中是否存在user_id / file_id组合。