Php 如何检查用户是否已登录到不同的ip/位置

Php 如何检查用户是否已登录到不同的ip/位置,php,mysql,yii,Php,Mysql,Yii,我想检查同一个用户是否通过不同的IP登录到多个位置,如果一个用户已经登录,那么上一个会话将被销毁 在YII框架上有什么解决方案吗 目前,我正在尝试在YII框架上开发此项目。没有任何存储,您无法完成此操作。您应该使用数据库记录登录历史记录,当用户再次登录时,比较用户IP和新用户登录所需的其他内容,并对该用户执行任何操作。您可以这样做 在userdata表中添加“last_session_ip”列 当用户登录时,使用其 当前ip 创建一个类似于loginauth()的函数,该函数将比较当前ip 具

我想检查同一个用户是否通过不同的IP登录到多个位置,如果一个用户已经登录,那么上一个会话将被销毁

在YII框架上有什么解决方案吗


目前,我正在尝试在YII框架上开发此项目。

没有任何存储,您无法完成此操作。您应该使用数据库记录登录历史记录,当用户再次登录时,比较用户IP和新用户登录所需的其他内容,并对该用户执行任何操作。

您可以这样做

  • 在userdata表中添加“last_session_ip”列
  • 当用户登录时,使用其 当前ip
  • 创建一个类似于
    loginauth()
    的函数,该函数将比较当前ip 具有db值。如果不相同,请销毁会话

这不是一个合适的解决方案,但可以让您走上正轨。

如果您想存储客户的位置(例如:国家、城市等),请参考此API:

到目前为止您已经尝试了什么??可能重复签出,这将对您有所帮助-但这并不意味着用户已登录到该ip地址,我相信…用户可以从该服务提供商处使用静态ip。在这种情况下,也会发生多次登录,这只是一种逻辑。