【问题标题】:Database set up for multi-way relationships and form data collecting为多向关系建立数据库并收集表格数据
【发布时间】:2016-12-09 10:45:30
【问题描述】:

我在这里发布了一些问题,并得到了非常大的帮助和支持。我对编程还很陌生,我正在整理我认为对我工作的公司来说很简单的网站。对于我冗长的帖子/问题,我提前道歉,我只是想彻底清楚地提出我的要求。我的问题更多的是需要一些帮助来指出如何开始的正确方向以及需要注意的一些最佳实践。我现在正在做的是创建一个系统,用户可以在其中提交问卷/在线表格来查询特定产品(在这种情况下,它是硬通货贷款产品)。我计划设置它的方式是拥有一个包含多个表(users、user_info、loan_app、property)的数据库,并通过相互引用将它们连接在一起。我读过关于表连接的文章,我从概念上理解它们,但我不知道如何在实践中实现。我很难找到实际的例子。

具体来说,这就是我正在做的事情以及我认为它应该如何工作(如果我错了或者有更好的方法,请纠正我):

1- 用户(又名借款人)登录网站。用户登录系统引用用户表,其中存储了名字、姓氏、用户名、密码和用户 ID 等信息。我在此表中包含了一个“活动”列,因此当用户登录时,他们进入网站的条件是用户名和密码匹配并且用户被激活。这样我们可以在后端控制某些用户帐户的访问。我有这部分工作。

2-当用户注册时,他们只填写在“用户”表中创建新记录的信息。我创建了第二个名为“user_info”的表,其中包含其他数据,如家庭地址、电话号码电子邮件等。但我需要能够将正确的记录与正确的用户相关联。这是我的第一个问题。我这样做而不是简单地将所有这些信息放在用户表中的想法是,一方面,我可能会继续向该表添加并使其变得非常大,另一方面,出于安全原因,我希望将信息分开。我不知道这个思考过程是否有任何优点。再说一次,这就是我在这里发布这个的原因。

3- 用户登录后,点击主屏幕/仪表板上的按钮,将进入贷款“预批准申请”表格,即调查问卷。在此表单上,他们的基本信息将从“user_info”表中回显/发布,以预先填充某些字段,如名字、姓氏、电子邮件、电话号码、地址等。所以回到#2,确保我可以关联在“user_info”表中具有正确记录的用户至关重要。然后,用户必须填写其他字段才能提交申请/问卷。这些表单字段将在“loan_app”表中创建一条新记录。该表将有一个作为该表主键的 loanid 列,以及一个自动生成/随机化的 6 或 7 位贷款编号 (loannum)。 Loanid 将是一个隐藏值,但贷款编号就像一个参考编号,与贷款相关联,并在内部用于以后的会计和记录目的,无论它是否真的成为贷款。我在这里假设,loanid 是“user”表中的外键,而 userid 是“loan_app”和“user_info”表中的外键是否正确?如果是这样,我如何在提交贷款申请/调查问卷时能够同时关联所有这些记录?我的想法是编写单独的 php 脚本,分别执行这些操作,然后有一个“主” php,其中包括作为与表单上的提交按钮相关联的表单操作放置的所有这些单独的 php。

感谢您花时间阅读本文。我真的很感激任何我可以阅读以了解更多关于这些东西的建议或参考资料。我的工作日程安排很疯狂,而且我经常出差,所以我没有时间参加实际的课程来正式学习这些东西。我几乎在做这件事。

另外,我正在使用 MAMP 和 mysql,不确定这是否有帮助...

【问题讨论】:

    标签: php mysql database forms join


    【解决方案1】:

    user 表的主键userid 也可以是user_info 表的主键,因为每个用户只有一个user_info 记录,对吧?外键约束可以确保只有有效的 userids 记录在 user_info 中。

    loan_app 表可以包含从loaniduserid 的非规范化关系,以便每个贷款申请都与一个用户相关联。同样,使用 FK 约束来保证完整性。

    不要在user 表中包含loanid - 这意味着每个用户都与单个贷款申请有关系。您已经在 loan_app 表中拥有所需的一对多关系。

    【讨论】:

      猜你喜欢
      • 2013-01-26
      • 2016-08-02
      • 2018-01-06
      • 1970-01-01
      • 2017-08-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多