我开发网络应用程序已经有几个月了。它是一个 PHP 和 MySQL 驱动的数据库应用程序,可将对象相互关联。
我想添加功能,以便有人可以注册使用它并设置每月订阅。当他们登录时,应用程序将简单地填充他们自己数据库中的数据。
我已经在网上进行了一些搜索,但我正在努力寻找添加此类功能的起点。
该应用程序依赖于数据库中的六个表。因此,我也不确定为每个用户创建单独的数据库是否可行。
最佳答案
为每个用户创建一个数据库很少是可行的方法 - 它很复杂,并且没有什么好处,但有很多缺点(例如,维护多个同时的数据库连接,因为大多数库只连接到单个数据库)。您真正需要做的是创建一个 user
表,然后使用 UserId
标记各种记录。
当用户注册时,创建一个新的User
记录,然后在所有引用该 ID 的其他表中创建新条目。 (实际上,只有每个关系对象的“根”需要 UserId
例如,如果您有 Order
和 OrderItems
,则只有 Order
表需要一个UserId
)
如果没有更多细节,就不可能提供进一步的帮助。
顺便说一句,您应该考虑 db-per-user 的唯一情况是每个用户都需要唯一的表(在这种情况下,您的应用程序必须非常复杂才能实际使用数据)或者存在以下安全问题:数据在一起(多个客户端比多个用户更有可能)。
关于php - 将用户注册和订阅添加到 PHP MySQL Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11075510/