php - mysql在一个字段中存储多个条目

标签 php mysql


好的,当用户登录到我的站点时,他或她将被带到一个页面,他们可以在其中预览他们可能想要下载的 mp3。当他们单击下载按钮时,我的 php 脚本会检查他们是否可以下载 mp3。每个用户每月可以下载 5 个节拍。如果用户还剩 5 次下载,脚本会像这样更新数据库

$q=mysql_query("UPDATE user_info SET mdr = '4' WHERE username = '$y'");

但如果用户出于某种原因必须再次下载 mp3,他将丢失一次下载。 所以要停止这种情况,每个 mp3 都会有一个 ID 号。因此,当用户下载 mp3 时,其 ID 将保存在名为 paidbeats 的字段中。该脚本将查看数据库并检查用户是否已经下载了 mp3;如果是这样,将不会向用户收取再次下载费用。例如,如果用户购买了 ID 号为 10015 的 mp3,然后第二天他购买了 1526,我将如何处理。我如何在一个字段中存储多个 ID,或者是否有更好的方法来执行此操作?

最佳答案

在一个字段中存储多个条目明显违反了 first normal form .

创建一个名为(比如说)user_purchases 的新表,其中包含两列 user_iditem_id(可能还有日期、价格等其他列) .

每一行代表一次特定的购买。

关于php - mysql在一个字段中存储多个条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4923478/

相关文章:

PHP – 获取目录的大小

具有有限子查询的 MySQL 查询

mysql - 在mysql中将发票金额分摊到几个月

php - 如何存储og meta标签信息?

php - 如何检查字符串是否包含任何语言的字母?

php - 使用下拉菜单更改 mysql 文本框值 PHP,mysql

php - 基本 PHP 帮助 - 列数与第 1 行的值数不匹配

mysql - AWS Aurora 迁移; MySQL 分区表无法恢复

php - 我如何在 php 中验证 google play 应用内购买?

php - SELECT 列表不在 GROUP BY 子句中错误