php用户应该在一个系统中登录,除非请求,否则不能从其他系统登录 我想允许用户只使用一个系统登录 如果他们使用另一台机器,那么他们应该无法登录 如果他们想要登录,那么他们可以单击请求登录选项,该选项将向用户发送一个重置链接,当单击该链接时,将重置并更新数据库,以便从现在起,他可以登录他发出重置请求的机器表单 因此,当用户更改其机器时,他应该无法登录,并且可以请求重置选项 我正在使用ip和会话id以及以前的会话id来检查从一台机器的登录 如果他的会话在该机器中过期,他将在下次登录时将上一个会话id引用存储在cookie中

php用户应该在一个系统中登录,除非请求,否则不能从其他系统登录 我想允许用户只使用一个系统登录 如果他们使用另一台机器,那么他们应该无法登录 如果他们想要登录,那么他们可以单击请求登录选项,该选项将向用户发送一个重置链接,当单击该链接时,将重置并更新数据库,以便从现在起,他可以登录他发出重置请求的机器表单 因此,当用户更改其机器时,他应该无法登录,并且可以请求重置选项 我正在使用ip和会话id以及以前的会话id来检查从一台机器的登录 如果他的会话在该机器中过期,他将在下次登录时将上一个会话id引用存储在cookie中,php,session,Php,Session,因此,每次他访问时,都会有两个cookie,表示他以前是否登录过这台机器,如果是,则更新会话id并登录 因此,如果他是从一台机器登录的,并且没有以前/当前的会话id/ip地址,那么他被认为是该机器的全新用户,他无法登录 希望我已经说清楚了。如果不太清楚,请评论,然后我将编辑我的问题 我想要一个更好的方法或其他有效的机制来实现这样的功能 即使客户端位于lan中,上述所有条件都适用。 我这样做会有并发症吗?如果是,请推荐一个好的。 多谢各位 在来自的评论后编辑 用户可以在任何地方登录,但如果机器

因此,每次他访问时,都会有两个cookie,表示他以前是否登录过这台机器,如果是,则更新会话id并登录

因此,如果他是从一台机器登录的,并且没有以前/当前的会话id/ip地址,那么他被认为是该机器的全新用户,他无法登录

希望我已经说清楚了。如果不太清楚,请评论,然后我将编辑我的问题

我想要一个更好的方法或其他有效的机制来实现这样的功能


即使客户端位于lan中,上述所有条件都适用。

我这样做会有并发症吗?如果是,请推荐一个好的。

多谢各位


在来自的评论后编辑



用户可以在任何地方登录,但如果机器发生变化,他们可以通过电子邮件请求重置。当他们单击电子邮件中的链接时,将记录机器ip,用户将必须继续在该系统中。这是管理员请求的,因为只有两个管理员用户。

为什么不使用cookie而不是会话,因为您的应用程序需要它。

我想你是糊涂了


会话从未存储在客户机中,cookie会存储。因此,您必须考虑此应用程序的cookie。一旦您实现了cookie而不是会话,项目的逻辑似乎就没有问题了。

我的问题是为什么?你想达到什么目的?即使客户机在局域网中,上述所有条件都适用。在这种情况下,询问客户他们想要什么,因为他们似乎很困惑。第1点说只使用一个系统。第2点说他们不能从另一台机器/系统登录,但第3点说,如果是另一台系统,则会重置登录,他们可以从另一台机器登录。因此,可能无法看到所有这些情况的用户可以从他们想要的任何机器登录。问题应该是,如何让用户只能够登录一次并且只有一个会话。那么同一个用户不能同时登录两次(或更多)吗?哦。用户可以在任何地方登录,但如果机器发生变化,他们可以通过电子邮件请求重置。当他们单击电子邮件中的链接时,将记录机器ip,用户将必须继续在该系统中。这是管理员要求的,因为只有两个管理员用户。哈哈。。。谁不知道你的第一句话。即使客户端在LAN中,上述所有条件都适用。即使在LAN中,cookie也可以在单独的机器中工作,有效期为。谢谢。是的,你的回答也很好。如果cookie被完全禁用,那么备选方案是什么?我希望这会变得非常乏味,就像发送url中所有加密的cookie数据一样,不是吗?我添加了更多的描述