PHP跟踪当前用户

时间:2014-06-02 03:25:20

标签: php variables

我的网站上有可编辑的数据库。我正在尝试实现一个简单的系统,确保没有人同时编辑同一行。我找不到任何有关如何将PHP变量传递给不同用户或如何将它们全局存储在服务器上的信息。

Ex: User 1 is editing Row ABC

User 2 attempts to edit Row ABC

User 2 is warned that someone is editing Row ABC

我心目中的理想解决方案是

User 1 is editing Row ABC -> Create PHP var for that row to lock it

User 2 attempts to edit Row ABC -> A check is done to see if that PHP var exists and its state (0/1)

如何将此值传递给不同的浏览器会话和/或用户?

1 个答案:

答案 0 :(得分:1)

您不需要使用PHP变量。只需在数据库中存储哪个用户正在编辑哪一行。当用户开始编辑行时。

使用名为RowLock的表格实施,并为其提供2列RowIdUserId。编辑一行是:

  • 检查该行是否正由其他用户编辑
  • 如果是,则拒绝访问
  • 如果不是,请将用户ID放在RowLock表中,然后授予访问权限

完成对行的编辑后,UserId设置为null或完全删除锁。