2013-04-24 124 views
0

我正在建立一个学校项目,我的想法是有一个网站,您可以注册一个帐户,向该帐户添加几个用户,然后计算每月共享费用债务,例如用户A在杂货上支付500,并且用户B仅支付250.这给用户B当月对用户A的债务125。单个用户的多个电子邮件地址和密码

我的问题是我想分开帐户与用户。现在我设置了一个名为Accounts with email和password的表格,然后我有一个包含特定用户信息的用户表。我希望几个人能够使用不同的凭据登录到同一个帐户。

用户表

ID, Name, Account_id etc. 

账表

ID, Email, Password, date_added, date_updated etc. 

什么是这样做的最好的方法?它是否有一个名为UsersForAccounts的交叉表或者我在用户表中指定了多个account_id?

+1

为什么不做一个像'group_id',其中每个'account_id'都是一个(或多个)'group_id'值的一部分? – 2013-04-24 16:26:23

+0

如果我支付500美元和你250美元,我希望你实际上有250美元的债务:) – 2013-04-24 16:29:03

回答

1

你不会认为它是一个帐户上的多个用户。您可以将其视为多个共享通用组设置的用户帐户。

所以你有一个用户的表,你可以预期 - 显然,每个人都有自己的价值观。

然后你有一个相关的表,分享组的细节。以兄弟会或其他事物为例。 因此你有皮皮作为一个组名称。在是用户A,B和C 一个非常非常基本的表结构可能是这样的:

Users: id, email, password, name, group_id 

Group: id, name 

所以用户会 - 此设置 - 有关系只有一组。如果你愿意,你可以创建一个关系表,这样用户可以拥有多个组。

这里的一般想法是,您将该组用作与用户分开的连接点,而不一定是使用相同帐户访问的多个用户。

如果不清,随时问,我可以更新

+0

哦,我明白你要去哪里。我会画出一些东西,并将结果返回给您!谢谢。 – 2013-04-24 16:42:07

0

可以使用这样的结构,如在用户表:

ID, Name, etc. 

而在帐户表使用最简单:

ID, Email, Password, date_added, date_updated, User_ID, etc 

这被称为多对一的关系,是理想的你的案件。

我可以传给你的一个小提示是使用小写字母来表示所有的字段,或者特殊字段的名称的第一个字符,用“ID”(这只是一个缩写词或类似的),以鉴定

在一个基本示例中,用户具有字段:

ID, name, etc. 

而且帐户表格上方的结构:

ID, email, password, date_added, date_updated, user_id 

这在短时间内帮不了多少忙,但它可以帮助您,并且非常适合使用PHP数据库。

相关问题