【问题标题】:Multipage Application Form with Sessions or Database?带有会话或数据库的多页申请表?
【发布时间】:2016-10-14 22:45:11
【问题描述】:

我想用 php 构建一个 5 页的申请表,用户必须在其中输入大约 50 个数据条目(姓名、年龄、其他详细信息...),如果表单完成,这些条目应该保存在主数据库中.

我想知道,以下哪种方法效果更好:

A) 完成一个页面后,将所有条目保存在一个大的 $​​_SESSION 数组中。最后将 $_SESSION 数组中的所有条目保存在主数据库中

B) 完成一个页面后,将所有条目保存在一个小型数据库中。在 $_SESSION 数组中只保存小型数据库的 id 和用户当前在表单上的页面。最后将 $_small 数据库中的所有条目保存到主数据库。

我不确定在 $_SESSION 数组中存储大约 50 个条目时是否会导致问题,尤其是在许多用户使用该表单的情况下。因此,我认为 B 可能会更好。但如果没有,如果网站的性能没有差异,我不想付出额外的努力来维护额外的本地数据库。使用 A)B) 时是否还有其他缺点?

【问题讨论】:

    标签: php mysql database session


    【解决方案1】:

    首先没有大小数据库,只有大小数据库。无需为每个页面设置单独的架构,因此在第二种方法中,您应该拥有多个表而不是多个数据库。

    无论如何,第一种方法实际上更好,因为如果用户取消或从不关注所有五个页面,您的表格中将留下无用的信息。将条目存储在$_SESSION 中也更快,因为您不必在每次提交表单后查询数据库,只需查询最后一个。第二种方法的唯一缺点是,如果用户离开您的页面然后返回,他们将需要从头开始输入所有内容,而在第一种方法中,他们可以从离开的地方继续(前提是您有办法告诉用户除了具有唯一 ID 或电子邮件之类的东西)。还是第一种方法是最好的。

    【讨论】:

    • 是的,对不起,我换了桌子。但是您的最后一句话应该仍然是第一种方法...对吗?
    • @Adam 是的,当然,我的错误我已修复,我的意思是第一种方法。会议是要走的路
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-16
    • 2010-09-15
    • 2012-10-22
    相关资源
    最近更新 更多