在PHP和MySQL的登录系统中通过Ip地址更改用户访问权限


Changing Users Access by Ip Address in Login System on PHP and MySQL

大家好,

这应该是我将要实施的最困难的系统。所以请帮助我了解这个系统。以下是系统的流程:

用户将使用他/她的办公室电脑登录网站。但是,如果他/她想在办公室外访问呢?当用户想要访问公司以外的网站时,系统将不允许用户访问该网站。但它会提示他/她一个对话框,上面写着"请联系MIS(075)653-3106"。现在,一旦用户呼叫MIS,网站管理员将接受用户请求,然后管理员将用户注册页面交给用户,以创建新的用户访问权限。

当用户注册他/她的用户帐户时,管理员将验证用户,用户可以访问公司以外的网站。当用户想访问网站时(这次用户在办公室),他/她会按照我所说的再次访问(请联系mis,核实,用户注册)。

问题是,为了成功实现这一点,系统将验证用户将用于访问网站的计算机的ip地址。一旦用户访问网站,他/她将使用的计算机必须将系统上注册的ip地址与他/她正在使用的计算机的ip地址相匹配。当用户想要访问公司外部时。管理员将提供一个用户注册页面,但它将注册计算机的新ip地址,并将在mysql数据库中更改ip_address值以及用户名和密码值,以便用户访问和新ip地址将在系统中注册,以便用户可以访问公司外的网站。如果用户将在办公室使用他/她的电脑,情况也是如此。

我正在使用php和mysql数据库,所以你能帮我处理这些吗。这是一个非常复杂的系统,所以我真的需要帮助如何做到这一点。

谢谢各位

流程如下:

  • 用户访问index.php页面。系统会找到IP地址并检查数据库,看看它们是否已知。如果找不到,它会被插入一个"临时"数据库,该数据库标记IP地址并"未激活"
  • 用户拨打您的电话号码,然后该人检查数据库(可能使用GUI),发现用户使用错误的IP地址访问了网站。他将IP地址标记为允许,然后用户重新加载他的页面,并获得一张注册表以创建新的用户帐户,IP地址与用户帐户关联
  • 如果用户有多个端点,它们将被添加到ip_address表中,该表具有以下结构:

    +----+---------+------------+-----------+|id | user_id | ip_address |已激活|+----+---------+------------+-----------+

这样,user_id可以与多个IP地址相关联,但它们可能不会被激活。如果用户在不允许的IP地址上访问而没有帐户,则会添加一个NULL user_id(因为他们还没有帐户)和一个0表示"已激活",因为他们还未被允许进入系统。当管理员将它们标记为允许时,他将1表示已激活,用户将注册。然后他们注册,userid被放在userid列中。

希望这是有道理的,

David