【问题标题】:Job no issue assignig to multiple users分配给多个用户的作业没有问题
【发布时间】:2012-06-29 11:09:10
【问题描述】:

让我详细描述一下这个问题。
我有一个名为导出的表。其中有一个字段 job_no。
当用户来填写此查询时运行

select  max(job_no) as Last_Job from jobs

结果是 A005,它是表中的最后一个作业号。
在 PHP 端,我在用户要填写和提交的输入表单中显示 A006。
表单中的 job_no 字段为只读字段,用户无法更改。
如果多个用户同时填写表单,则问题出现了 这是重复的,不是必需的。
现在应该有什么解决方案来防止这种情况。 我有三个解决方案,但我想知道是否有更好的解决方案。

解决方案 1
我将作业编号插入带有用户 ID 的 user_entry 表单并将其显示给用户。
然后当用户提交表单时,我会更新它。
Draback 似乎如果用户取消表单提交,那么 job_no 就没用了。

解决方案 2
我向每个用户显示作业编号,并在提交时检查作业编号,增加它并告诉用户已分配作业编号,因此他将被分配下一个。
如果我不向用户显示提示消息,他会认为他的工作编号是 A006,而在数据库中它将是 A007。

另外,如果我使用 setInterval 运行 ajax 请求,这将是服务器的负载,并且仍然有重复的机会。

这是向用户显示作业编号所必需的。那么在这种情况下有什么更好的方法。或者有什么办法可以解决这个问题?

【问题讨论】:

    标签: ajax database codeigniter unique


    【解决方案1】:

    为什么在用户创建表单之前向他们显示 A006?如果你可以使用解决方案二,我看不出这怎么可能是一个“要求”,它说你无论如何都可以改变它。

    你为什么不让他们填写表格,当他们提交时说“谢谢 - 工作 A006 已创建”。简单易行

    【讨论】:

      猜你喜欢
      • 2017-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-19
      • 2014-11-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多