我无法编写登录脚本

时间:2019-10-17 15:36:39

标签: php session

我正在尝试编写登录脚本。但是不能编写它并遇到一些问题。

<?php
    include 'Database.php';

    if (isset($_POST['sub'])) {
        if (!empty($_POST['email']) && !empty($_POST['password'])) {
            $db = new User();
            $query = $db->query('SELECT * FROM users WHERE email="'.$_POST['email'].'" AND pasword="'.$_POST['password'].'"');

            if ($query && $query->num_rows > 0) {
                $row = $query->fetch_assoc();

                if (password_verify($_POST['password'], $row['password'])) {
                    echo "Log in Success";
                }
                else {
                    echo "Password doesnt match!";
                }
            }
            else {
                echo "Not found";
            }
        }
        else {
            echo "Fill the blanks";
        }
    }
    else {
        echo "Error";
    }
?>

如何在此处设置会话。
而且我知道我这里有一些错误,请有人帮助我修复这些错误。

1 个答案:

答案 0 :(得分:0)

首先,我建议使用准备好的语句来构建查询。这样可以确保无法进行SQL注入。

第二,您可以在调用session_start()

后分配会话变量
<?php
session_start(); //Call at the top of your page.
//Do login stuff
if(login_success) {
    $_SESSION['userId'] = $user->Id; //Taken from the select.
}
?>