【发布时间】:2012-10-09 06:44:01
【问题描述】:
这是场景: 我有多个用户使用 PHP 页面/表单同时编辑数据。 该表具有多行数据,并且每个用户都可以一次编辑任何一行。系统选择要编辑的行;因此,只需给用户一行进行编辑;他不决定要编辑哪一行。
用户第一次访问带有表单的页面时,它会加载一行。此外,为了让系统可以决定将哪一行提供给任何其他并发用户,它会在数据库表中设置一个标志,指示该行已被加载以供编辑(给另一个并发用户)。
现在,如果用户在没有点击提交按钮的情况下刷新页面或退出页面,我想回滚标志更改,以便可以再次使加载的行可用于编辑。
为此,我打算使用 MySQL 事务。 - 在事务开始时,将设置标志。 - 然后,将要编辑的数据加载到表单中。
一旦用户编辑数据并提交(通过单击按钮),才会发出 Commit。
所以,我的理解是 START 事务和 Commit 将分别发生。
有人可以就如何实现这一点提供一些指导吗?
【问题讨论】:
标签: php transactions mysqli