<?php
if(isset($_POST['submit'])) {
$UserName = mysql_real_escape_string($_POST['UserName']);
$password = mysql_real_escape_string($_POST['password']);
$checkbox = isset($_POST['remember_me']);
if(user_exists ($UserName, $db_connect)) {
$result = mysqli_query ($db_connect, "SELECT password FROM users WHERE UserName = '$UserName'");
$retrievepassword = mysqli_fetch_assoc($result);
if(md5($password) !== $retrievepassword['password']) {
$alert = "Invalid Password";
} else {
$_SESSION['UserName'] = $UserName;
if($checkbox == "on") {
setcookie("UserName", $UserName, time()+3600);
}
header("location: profile.php");
}
} else {
$alert = "Username doesn't exit in database";
}
}
?>
我已经制作了以下运行良好的登录脚本,现在我想在登录前检查用户的状态,如果用户处于事件状态,它将登录,如果它的请求未决或被拒绝,它将显示错误。 我已经完成了第一部分,但对必须检查状态的另一部分感到困惑。
有人可以根据我的代码帮助我吗?
最佳答案
我假设您的数据库中有一列用于存储用户的状态。 Sooo .. 你的问题的答案是,在检查你的数据库中是否存在用户名之后,检查状态是否为“事件”。如果不是,则只显示错误消息。 您可能会想到另一种查询数据的方法,例如:
SELECT * FROM USERS WHERE USERNAME = 'username' AND PASSWORD = 'password' AND STATUS = true
如果没有返回任何内容,您可以立即确定它是否处于事件状态。
希望对您有所帮助。 :)
关于php用户登录脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44793595/