Php 如何限制某些注册用户登录?
我想限制注册用户登录,而不仅仅是 用户名和密码,它应该: 如果用户投票_status='a',则允许用户使用其 用户名和密码 如果投票状态为“b”,则应限制用户登录,并提示您不允许登录其他用户名/密码不正确。 但我不知道该怎么做,因为我是一个编码新手。我真的需要帮助。这就是我到目前为止所能做到的Php 如何限制某些注册用户登录?,php,jquery,mysql,Php,Jquery,Mysql,我想限制注册用户登录,而不仅仅是 用户名和密码,它应该: 如果用户投票_status='a',则允许用户使用其 用户名和密码 如果投票状态为“b”,则应限制用户登录,并提示您不允许登录其他用户名/密码不正确。 但我不知道该怎么做,因为我是一个编码新手。我真的需要帮助。这就是我到目前为止所能做到的 <?php define('DB_HOST', 'localhost'); define('DB_NAME', 'university portal'); define('DB_USER','ro
<?php
define('DB_HOST', 'localhost');
define('DB_NAME', 'university portal');
define('DB_USER','root');
define('DB_PASSWORD','password007');
$con=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("Failed to connect to MySQL: " . mysql_error());
$db=mysql_select_db(DB_NAME,$con) or die("Failed to connect to MySQL: " . mysql_error());
/*
$ID = $_POST['user'];
$Password = $_POST['pass'];
*/
function SignIn()
{
session_start(); //starting the session for user profile page
if(!empty($_POST['UserName'])) //checking the 'user' name which is from Sign-In.html, is it empty or have some text
{
$query = mysql_query("SELECT Username, Password, voting_staus
FROM voters
where Username = '$_POST[UserName]',
Password = '$_POST[password]'
voting_status = 'a' ")
or die(mysql_error());
$row = mysql_fetch_array($query) or die(mysql_error());
if(!empty($row['Username']) AND !empty($row['Password'])){
if($row['voting_status']){
$_SESSION['Username'] = $row['Password'];
echo "SUCCESSFULLY LOGIN TO USER PROFILE PAGE...";
}
}
elseif($row[voting_status]=='b') {
echo "You are not allow to Login Here";
} else {
echo "SORRY... YOU ENTERD WRONG ID AND PASSWORD... PLEASE RETRY...";
}
}
}
if(isset($_POST['submit'])) {
SignIn();
}
?>
请做这些更改
if(!empty($_POST['UserName'])&& !empty($_POST['password']) ) //checking the 'user' name which is from Sign-In.html, is it empty or have some text
{
$query = mysql_query("SELECT Username, Password, voting_staus
FROM voters
where Username = '$_POST[UserName]' and
Password = '$_POST[password]'
")
改变这个
if($row['voting_status'] == 'a'){ // change by mo
$_SESSION['Username'] = $row['Password'];
echo "SUCCESSFULLY LOGIN TO USER PROFILE PAGE...";
我在您的查询中进行了更改删除,使用和在何处条件以及删除投票状态。您在查询中对状态使用了错误的拼写每次在新代码中使用数据库扩展时,它都会被弃用,并且在PHP7中已经存在多年,并且永远消失。如果您只是在学习PHP,请将精力花在学习PDO或mysqli数据库扩展和准备好的语句上。您的脚本有可能出现以下情况:查看一下发生了什么,甚至可以使用您可以在选民表中添加一列,以指示是否允许用户登录并检查是否!空$row['IsAllowed']一些合理的代码缩进将是一个好主意。它帮助我们阅读代码,更重要的是,它将帮助您为自己的利益调试代码。您可能需要在几周/几个月内修改此代码,最后您会感谢我。请检查STATUS的拼写。请考虑RiggSi所提到的事项。已经尝试过您的更改而不是错误,但是它没有成功登录到用户配置文件页,只加载页面。