第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

使用 bcrypt 進(jìn)行登錄驗(yàn)證

使用 bcrypt 進(jìn)行登錄驗(yàn)證

PHP
青春有我 2023-12-15 15:03:47
我有一個(gè)用 Laravel 構(gòu)建的網(wǎng)絡(luò)應(yīng)用程序。我正在另一個(gè)網(wǎng)站上工作,但不是在 Laravel 上工作。我需要使用 Laravel 站點(diǎn)數(shù)據(jù)庫上的用戶表對(duì)這個(gè)新站點(diǎn)上的用戶進(jìn)行身份驗(yàn)證。密碼使用 bcrypt 進(jìn)行哈希處理。我嘗試在用戶登錄之前驗(yàn)證密碼,但我似乎遺漏了一些東西。有人可以幫忙嗎?<?php if (isset($_POST['login'])) {    $user  = mysqli_real_escape_string($_POST['email']);    $pass  = mysqli_real_escape_string($_POST['password']); //input entered    $dpass = password_hash('$pass', PASSWORD_DEFAULT)."\n";    echo $dpass;        $query   = mysqli_query($conn, "SELECT * FROM users WHERE `email` = '$user' AND `password` ='$pass'");    $numrows = mysqli_num_rows($query);    if ($numrows != 0) {        while ($row = mysqli_fetch_assoc($query)) {            $dbemail    = $row['email'];            $dbpassword = $row['password'];        }        if ($user === $dbemail && password_verify($pass, $dbpassword)) {            session_start();            $_SESSION['email'] = $username;            // Redirect Browser            header("Location:mentor.php");        }    } else {        echo "<div class='alert alert-danger alert-dismissible'>            <a href='#' class='close' data-dismiss='alert' aria-label='close'>&times;</a>            <strong>Warning!</strong> Invalid credentials.        </div>";    }}?>
查看完整描述

2 回答

?
撒科打諢

TA貢獻(xiàn)1934條經(jīng)驗(yàn) 獲得超2個(gè)贊

經(jīng)過上述評(píng)論的建議后,我得出了這個(gè)有效的結(jié)論。


 <?php 

                        if(isset($_POST['login'])){

                         $user = mysqli_real_escape_string($conn,$_POST['email']);

                         $pass = mysqli_real_escape_string($conn,$_POST['password']); //input entered


                         $query = mysqli_query($conn, "SELECT * FROM users WHERE `email` = '$user'");

                         $numrows = mysqli_num_rows($query);

                         if($numrows !=0)

                         {

                         while($row = mysqli_fetch_assoc($query))

                         {

                         $dbemail=$row['email'];

                         $dbpassword=$row['password'];

                         }

                         if(password_verify($pass, $dbpassword))

                        {

                         session_start();

                         $_SESSION['email'] = $username;

                         //Redirect Browser

                         

                         }

                         }

                         else

                         {

                        echo "<div class='alert alert-danger alert-dismissible'>

                          <a href='#' class='close' data-dismiss='alert' aria-label='close'>&times;</a>

                          <strong>Warning!</strong> Invalid credentials.

                        </div>";

                         }

                        }?>


查看完整回答
反對(duì) 回復(fù) 2023-12-15
?
智慧大石

TA貢獻(xiàn)1946條經(jīng)驗(yàn) 獲得超3個(gè)贊

不確定,但你嘗試過嗎

password_verify(mysqli_real_escape_string($_POST['password']), $dbpassword)

我的意思是比較未加密的密碼與哈希值。在 Laravel 中

Hash::check()

還需要非哈希密碼作為參數(shù)。


查看完整回答
反對(duì) 回復(fù) 2023-12-15
  • 2 回答
  • 0 關(guān)注
  • 221 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)