每个用户使用Temp Records PHP DB的好方法?

时间:2011-07-26 12:13:37

标签: php jquery mysql ajax

我正在开发一个Web应用程序,它将接受用户输入,显示它,然后仅在用户点击“保存按钮”时填充数据库。

这个概念类似于“jsfiddle”,它允许你创建但不保存直到用户决定,然后它也会创建一个自定义网址。

问题是:

在保存之前保留用户条目的好方法是什么?

  • 会话数组(按“保存按钮”将其推送到数据库)
  • 临时Mysql表记录
  • Cookie /会话组合

如果问题需要进一步澄清,请提供建议。问题更多的是临时记录。 PHP语言。

3 个答案:

答案 0 :(得分:1)

答案实际上取决于您使用的内容类型。对于冗长复杂的表单,我将使用临时表条目并在保存时复制内容。请务必使用系统清理旧的临时条目。

对于不太复杂的问题,我会使用cookie系统,或者使用PHP $ _SESSION。

答案 1 :(得分:1)

首先,你不能在cookie中存储任意数量的数据 - 有一个谷歌用于RFC(IIRC,限制是根据特定主机的所有cookie的大小设置的)。

你也不能使用mysql临时表 - mysql会话会话只运行PHP脚本 - 在 mysql 会话结束时(不是PHP会话,这是一种制作数据的机制)在解释器的调用之间保持不变,临时表丢失了。

最有效的解决方案将取决于用户放弃数据输入的频率和工作集中的大小范围,但最简单的解决方案是将数据存储在最终写入的表中 - 但标记它作为带有用户ID或会话ID链接的工作副本。

答案 2 :(得分:0)

您是否可以使用HTML5?

  • :使用localStorage,允许您在客户端存储大量数据,无需在服务器上进一步处理。它将在浏览器崩溃后继续存在,不会受到同步问题网络的影响,等等。
  • :您需要使用Cookie让服务器记住用户选择的内容。 您的数据是否会在4ko中保留?
    • :然后您可以将所有内容存储在Cookie中,因此如果您愿意,无需在服务器上存储任何内容。
    • no :使用PHP会话机制将会话内容存储在您的服务器上,并仅使用cookie知道在服务器上找到数据的位置。