2015-05-30 76 views
3

我正在为我的运动开发一个竞赛平台,并且我遇到了一个问题,我不确定是否将其识别为数据库设计问题或编程问题。我使用PHP和MySQL。与登录的链接配置文件

例如:我是比赛的组织者。我需要注册所有运动员参加本次比赛,我通过搜索运动员数据库来查看他是否已经存在。如果运动员没有找到,我只是在飞行中创建一个新的运动员。 后来,运动员来了,想要注册页面,他想创建一个登录。我想将他的登录信息与他的运动员个人资料联系起来,我想我会通过登录桌和运动员桌这样做,并以某种方式将这两个联系起来。不过,我确定如何去做。我如何检查哪个运动员档案属于创建登录的人。我如何创建这两个表之间的链接。我知道这是用外键完成的,那不是我的问题。但是,我该如何解决“嘿,你想创建自己的登录信息?看,我认为我找到了你已经存在的运动员档案,我应该将你的登录信息链接到它吗?”

你明白吗,我的问题是什么?如果需要更多信息,请告诉我。我正在努力解释自己。

+1

你有运动员的电子邮件吗?你在注册时有什么关于运动员的信息?如果您只有他们的名字,我认为您需要在注册时将其与用户给定的名字进行匹配。如果有多个记录带有该名称,则可以向用户显示一些信息,以便他可以选择他的记录 –

+0

那么总是给出全名。电子邮件也许......今天的大多数竞赛注册都是通过纸质表格完成的,他们可以选择是否提供电子邮件地址。我还会实施一个在线注册表格,运动员必须提供一个电子邮件地址,如果他还没有这样做,可以在稍后注册。所以事情可能是,我无法确定100%,对吗?我想过通过电子邮件地址做链接,但将电子邮件地址存储两次不是不好的做法吗?一次在运动员档案中,一次登录? –

+1

您不需要存储电子邮件两次,您可以使用一个表执行此操作。你会接受以前没有注册的用户吗?如果您不愿意,可以让他们填写表格并搜索匹配的记录,如果有的话。然后,您使用给定的信息来更新记录。如果你有他们的电子邮件,它会好得多,因为你可以通过发送带确认链接的电子邮件来确认它。 –

回答

1

创建两个表格,一个用于配置文件信息,另一个用于存储登录信息。当您保存新运动员时,即使您没有关于用户登录信息,请确保您创建了两条记录(登录名和个人资料)。由于您已经有登录记录,因此您可以将配置文件记录链接到它。当用户到您的系统注册自己时,只需获取给定信息(如电子邮件,姓名等)的记录并更新它。

电子邮件只能存储在登录表中。

您可以使用电子邮件确认来使事情更安全。

+0

谢谢,你的回答给我带来了正确的道路:) –