可编辑表格并保存更改

问题描述:

我希望这不会比看起来更难。可编辑表格并保存更改

我想创建一个带有几个文本框的HTML表单,它允许人们输入一些数据,并且我希望这些更改被保存到表单中。

例如,如果我的html页面说:

名称:[]

...我希望有人能够点击[]并输入他们的名字,等等。然后点击保存 ,然后有形式说:

名称:“人的名称”

如果有人想更新它,他们可以点击该人的姓名并更改它,然后点击保存并自行更新HTML表单。

我该怎么做?我到处都在寻找,人们都在谈论HTML5和PHP。制作这样一个简单的页面真的很复杂吗?

(如果我是不是在我的HTML清楚我使用的contenteditable="true"选项。我​​如何保存这些更改?)

+0

您想用什么来存储数据?我的意思是,如果你不想长期保持它,你可以使用JavaScript来显示它,但我不明白这一点。 – 2011-06-16 00:50:26

+0

你能接受其中一个答案吗? – T9b 2011-07-25 07:35:40

你不需要HTML5。 HTML4足够好:)

但是你需要一些服务器端脚本来保存更改(在服务器端,例如在DB或XML文件中)。为了让它更好体验(如果多个用户同时使用表单),我建议您使用AJAX保存更改并轮询服务器以获取更新。

这并不复杂(至少我不认为它是这样),但它似乎比你已经知道的要早一代。在没有需要帮助的情况下完成此类事情之前,可能需要相当长的时间才能建立结构。

有一些基本的问题

  • 是否需要信息时,用户点击刷新留得救吗?
  • 当用户清除cookie时是否需要保存信息?

如果信息可以在下次回到您的页面时被删除,那么很简单。

否则,我们需要一种方法来跟踪哪个用户可以看到什么信息,因此得克萨斯州的人没有看到中国城中输入的信息.Cookie是一种常见的方式。如果没有太多信息,您可以将信息保存到Cookie中。

否则,您需要严谨的语言。这通常是用PHP编写的,但是要决定什么语言与你想要首先学习的原因有关?你想在以后为公司工作吗?你有你自己的网站吗?

请发表评论以让我知道更多关于发生了什么事,以及对这两个基本问题的答案是什么,我会更好地回答。

通常,对于大多数情况下,存在登录名和密码(或OpenID),并且如果清除了cookie,则用户再次登录,但在重新访问之前需要一些工作来设置工作登录这个如何存储他们输入的问题。

我认为你的问题表明你不知道网页(包括表单)是“无状态的”,这意味着它们不会“自动”保存或存储你对它们做的任何事情。很抱歉,令人失望,但作为初学者,您将很难找到“简单”的解决方案。

这并不是说它不能完成 - 你无疑在任何地方都可以看到它 - 但是你的知识水平错过了这样一个事实,即你需要真正编程逻辑来确定你的表单将如何“出现”存储信息并在稍后的访问中重现。

这里有一个(真的)小结:

当你的形式使用您的用户,一对夫妇的事情都已经发生了,他们能看到表单之前:

  1. 用户已请求的页面(输入网址或点击链接)

  2. 网络服务器发送请求的页面(也就是,你的网站发送了形式)

发生的下一件事是您的用户在窗体上输入一些数据。这些数据不会存储在任何地方 - 如果您刷新页面,则数据已消失,因为步骤1和2再次发生。

因此,为了避免这种情况,你可以使用一些工具:

的Javascript:此操作用户的计算机上。您可以使用它来查明某个表单上是否存在某些内容,并将其存储在例如Cookie中。

然后,你将不得不在你的页面中建立一些逻辑,说:“如果我的用户刷新页面或在以后返回到这个网站,然后查找cookie。如果它存在,然后把它的值并在用户看到之前预填表格。“

服务器端脚本:这种逻辑可以内置到您的Web服务器(使用如PHP的服务器端脚本),因此它实际上在步骤2中

或者运行就可以构建成一个javascript函数当用户实际收到页面时触发。这将是第3步。

第二种替代方法将AJAX这两个想法(在用户端进行处理并在Web服务器端进行处理)结合起来,这基本上意味着您的JavaScript和PHP之间的“讨论”发生在“在数据输入或更改时即时“。

最后,您可能需要考虑PHP会话来存储数据和/或mySQL数据库。最近,随着现代浏览器的出现,您现在可以将信息存储在用户浏览器可用的本地数据库中...

在所有这些情况下,您需要了解这些组件如何相互交流,如何检索信息,以及如何更新无状态和静态表单。

它不像您想象的那样直截了当......