准备好的声明足够安全?

时间:2016-06-21 18:25:50

标签: php

我正在尝试使用准备好的语句来保护我的登录页面。 密码是哈希的,我试过也把它放在准备好的语句中,但它不起作用。

我不确定以下代码是否足够安全。

<?php require 'Connections/localhost.php'; ?>

<?php
if(isset($_POST['LogIn'])) {

    session_start();

    $EM = $_POST['E-mail'];
    $PW = $_POST['Wacht-Woord'];

    $sql = "select Password, UserID, UserLevel from user where Email=?";

    $stmt = $con->prepare($sql);

    $stmt->bind_param("s", $EM);

    $stmt->execute();

    $stmt->bind_result($Password, $UID, $UL);

    while ($stmt->fetch())
    {
        if(password_verify($PW, $Password))
        {
            session_start();

            $_SESSION["UserID"] = $UID; 

            if($UL=="1")
            {
                header('Location: Account.php');
            }
            else if ($UL=="2")
            {
                header('Location: CRUD/indexAdmin.php');
            }
        }
        else
        {
            $_SESSION["LogInFail"] = "Yes";
        }
    }

}

?>

0 个答案:

没有答案