【问题标题】:Saving Data: Check if value has changed?保存数据:检查值是否已更改?
【发布时间】:2013-08-11 20:23:18
【问题描述】:

假设您的表单有一堆字段,通常只有 1 或 2 个字段被更改并需要保存。你:

  1. 只需使用所有值更新数据库即可,无论它们是否已更改。
  2. 使用表单状态,并且只回发已更改的值。
  3. 在类外部检查新值与旧值。
  4. 在内部使用set_property() 方法检查新值与旧值。
  5. 那么您必须保留一组更新的字段以进行保存...

我可能是错的,但似乎我见过的大多数例子都只是做#1。如果您在 1 个表中有 100 多个帖子的大型列表,您不想每次更新 1 个字段时都循环并保存它们...

【问题讨论】:

  • 对于您提到的 100 多个场景,我认为使用 AJAX 请求/响应而不是一遍又一遍地提交整个页面可能是可取的。这样,您仅在需要发送请求时才更新需要更新的值。
  • 例如,我使用该逻辑来实现 tinymce 自动保存(在用户键入信息时定期将信息保存在数据库中)。
  • 我会执行类似于选项二的操作,您可以在其中检查数据是否已在客户端更改。 (JavaScript, onchange) 那么提交的时候只会发送触发onchange的数据。
  • mySQL 很聪明,知道何时更新命令实际上不需要更新行stackoverflow.com/questions/3186908/…

标签: php html database forms save


【解决方案1】:

我会使用#2,跟踪自上次保存后发生的变化。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-24
    • 2010-10-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-20
    • 1970-01-01
    相关资源
    最近更新 更多