php用户登录脚本

标签 php mysql

<?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/

相关文章:

php - 同时使用两个查询。 PDO

php - 距离计算哪个更快 mongodb 或 mysql

php - 将 6k 图像从 Access 迁移到 MySQL 的最佳方法?

php - .htaccess 文件、PHP、包含目录和 Windows XAMPP 配置噩梦

mysql - 重新排序 SELECT LIMIT 查询的输出

mysql - MariaDB:我可以在不使用 'AS' 的情况下检索重复的列名吗

mysql - 如何使用编码密码转储数据库

mysql - 调用存储过程期间 MySQL 中的 date_added、date_modified 列警告 1265

php - 字符串的MYSQL CASE问题

php - $_GET 未定义索引(来自 mysql 表的值)