首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将草稿保存为草稿,然后更新草案?

将草稿保存为草稿,然后更新草案?
EN

Stack Overflow用户
提问于 2013-07-26 17:58:55
回答 3查看 3.7K关注 0票数 3

我有一个只有几个字段的表格。现在,单击“另存为草稿”按钮,ajax调用将转到数据库中,并将存储已编辑的字段。

但是当用户再次单击“另存为草稿”时,将更新前一个字段,而不是创建一个新字段。

所以我想找点补救办法

-。创建一个隐藏字段,并在加载页面时使用唯一编号加载该字段,并将其存储在会话变量中。

在将唯一的数字与会话变量进行比较之后,如果数值相同,那么在sql中更新字段,或者在sql中创建一个新字段。

以上解决方案可以吗?还是人们使用不同的解决方案?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-07-26 18:10:20

为什么不呢?在第一个Ajax调用“保存草稿”中,检索一些非常简单的JSON,如

代码语言:javascript
复制
{ field_id: 1 }

然后将该值保存到DOM中,将其放在输入中,或者更好--只需将其存储在变量中即可。然后,您可以在随后的草稿/最终保存中检查该变量是否存在,并更改Ajax post以说明它。您只需在表中添加一个布尔列,例如跟踪post阶段的final。从服务器端的角度来看,您可以通过调用MySQL (例如,调用id()方法 )来轻松地获得id()方法插入的值。

一个非常好的附加触摸可能还包括使用pushState方法来更新URL (例如,到index.php?draft=1)。这样,即使用户单击“后退”按钮,他们也可以返回到正确的页面,您也可以为他们提取他们保存的数据。

票数 3
EN

Stack Overflow用户

发布于 2013-07-26 18:10:48

1解决方案=将字段值添加到DB表=在再次提交时比较这些值,如果您的值匹配,则不会进行任何其他更改,以便您可以更新mysql。

2 Solition =其他解决方案可以是在会话中存储数据,当用户完成编辑时,将它们添加到DBase tbl中。

第三种解决方案将数据存储到任何平面文件系统中,然后使用它添加mysql表。

第四种解决方案允许编辑字段的形式,以便用户可以修改数据,如果他想在任何时候编辑它。

票数 1
EN

Stack Overflow用户

发布于 2013-07-26 18:11:59

如果数据库中有一个自动递增字段,则可以获得该字段的id。当用户保存为草稿时,可以将更改存储在数据库中,并将记录的id存储在会话中。然后,当用户再次将其保存为草稿时,可以使用该id更新数据库中的正确行。

您可以将id存储在表单中,但是用户可以轻松(甚至是意外地)使用错误的id发布数据并更新错误的行。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17887959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档