Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP和MySQL根据ID创建两个不同的登录页面_Php_Mysql - Fatal编程技术网

使用PHP和MySQL根据ID创建两个不同的登录页面

使用PHP和MySQL根据ID创建两个不同的登录页面,php,mysql,Php,Mysql,现在这是我对普通访客的查询,现在如果我需要一个管理员和版主,我如何处理来自同一个用户的特定ID 我的SQL查询 $query = "SELECT * FROM users WHERE username = '".mysql_escape_string($username)."' AND password = '".mysql_escape_string($password)."'";

现在这是我对普通访客的查询,现在如果我需要一个管理员和版主,我如何处理来自同一个用户的特定ID

我的SQL查询

        $query = "SELECT *
              FROM users
              WHERE username = '".mysql_escape_string($username)."'
              AND password = '".mysql_escape_string($password)."'";
        $result = mysql_fetch_array(mysql_query($query));

管理员和版主的登录页面将是相同的。

我不知道我是否正确理解您的问题,但通常登录系统不应在用户角色之间产生任何差异。登录后,您可以检查登录用户的权限,并允许他访问应用程序的限制区域。

我不知道我是否正确理解您的问题,但通常登录系统不应在用户角色之间产生任何差异。登录后,您可以检查登录用户的权限,并授予他访问应用程序限制区域的权限。

您需要在表中添加用户类型的字段,
您知道什么是组用户

您需要在表中添加用户类型的字段,
您知道什么是组用户

我可能误解了您的要求,但您可以在用户表中添加另一列以区分不同类型的用户。您可以为此添加一个整数列:

CREATE TABLE IF NOT EXISTS `users` (
  `yourID` int(10) unsigned NOT NULL auto_increment,
  `username` varchar(26) collate latin1_general_ci NOT NULL,
  `password` varchar(26) collate latin1_general_ci NOT NULL,
   PRIMARY KEY  (`yourID`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=87992 ;
然后你可以根据你想让用户做什么来设置,例如

ALTER TABLE users ADD userlevel tinyint NOT NULL default 0;
当用户登录时,您可以在查询中检索该值,并在会话中使用/存储该值,以便授予对受限操作的访问权限


您还可以考虑使用MySQL枚举类型来替代整数。

我可能误解了您的要求,但您可以在users表中添加另一列来区分不同类型的用户。您可以为此添加一个整数列:

CREATE TABLE IF NOT EXISTS `users` (
  `yourID` int(10) unsigned NOT NULL auto_increment,
  `username` varchar(26) collate latin1_general_ci NOT NULL,
  `password` varchar(26) collate latin1_general_ci NOT NULL,
   PRIMARY KEY  (`yourID`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=87992 ;
然后你可以根据你想让用户做什么来设置,例如

ALTER TABLE users ADD userlevel tinyint NOT NULL default 0;
当用户登录时,您可以在查询中检索该值,并在会话中使用/存储该值,以便授予对受限操作的访问权限


您还可以将MySQL枚举类型用作整数的替代方法。

我猜您想要区分“普通用户”和“管理员”。为什么不在用户表中添加另一列,例如AdminStatus,并将其设置为int,0表示否,1表示是。然后在您的登录查询中,只需检查AdminStatus。

我猜您想要区分“普通用户”和“管理员”。为什么不在用户表中添加另一列,例如AdminStatus,并将其设置为int,0表示否,1表示是。然后在您的登录查询中,只需检查AdminStatus。

我不确定我是否理解这个问题。但我最近实现了一个登录系统,我需要一个用户帐户和一个管理员帐户。我在users表中添加了一列“privilege”,然后存储了一个与该用户权限级别相关的数字。然后在受限页面上,我只是检查用户是否具有查看页面所需的访问级别

  • 添加特权(tinyInt)属性用户表
  • 将活动(布尔)属性添加到 用户表
  • 将cookie(varchar)属性添加到 用户表
//在访问页面时运行

checkLogin($privilege){

}

//Php的网站

如果(检查登录(0)){


}我不确定我是否理解这个问题。但我最近实现了一个登录系统,我需要一个用户帐户和一个管理员帐户。我在users表中添加了一列“privilege”,然后存储了一个与该用户权限级别相关的数字。然后在受限页面上,我只是检查用户是否具有查看页面所需的访问级别

  • 添加特权(tinyInt)属性用户表
  • 将活动(布尔)属性添加到 用户表
  • 将cookie(varchar)属性添加到 用户表
//在访问页面时运行

checkLogin($privilege){

}

//Php的网站

如果(检查登录(0)){


}

这绝对是实现用户身份验证的方法。任何更复杂的事情都会不必要地使过程复杂化+1这绝对是实现用户身份验证的方法。任何更复杂的事情都会不必要地使过程复杂化+是的,这是我的确切要求,你能给我举个例子吗?是的,这是我的确切要求,你能给我举个例子吗。
//0 – guest
//1 – user
//3 – admin