Rumah >pembangunan bahagian belakang >tutorial php >Di manakah Pengesahan Kata Laluan Perlu Diletakkan dalam Skrip Log Masuk?

Di manakah Pengesahan Kata Laluan Perlu Diletakkan dalam Skrip Log Masuk?

Susan Sarandon
Susan Sarandonasal
2024-11-25 02:11:13364semak imbas

Where Should Password Verification Be Placed in a Login Script?

Tempat Mengintegrasikan Pengesahan Kata Laluan dalam Skrip Log Masuk

Dalam skrip log masuk, kata laluan biasanya dimasukkan oleh pengguna dan disimpan dalam pembolehubah teks yang jelas. Untuk mengesahkan kata laluan yang dimasukkan terhadap kata laluan yang disulitkan yang disimpan dalam pangkalan data, kami perlu menggunakan password_verify().

if(password_verify($enteredPassword, $hashedPassword)) {
    // Password verification successful
} else {
    // Password verification failed
}

Mengintegrasikan Pengesahan Kata Laluan dalam Skrip Log Masuk Anda

Dalam kes khusus anda, anda boleh menyepadukan password_verify() dalam segmen kod berikut:

if(($row = $query->fetch()) && (password_verify($ctPassword,$row['password']))){
    // Password verification successful
    $_SESSION['email'] = $row['email'];
    $_SESSION['first_name'] = $row['first_name'];

Ingat untuk mengikat kata laluan yang dimasukkan ($ctPassword) kepada parameter dalam pernyataan yang disediakan untuk memastikan pelaksanaan selamat.

Menggunakan PDO::FETCH_ASSOC untuk Pendapatan Data Pengguna

Untuk mendapatkan semula data pengguna dengan lebih cekap menggunakan PDO::FETCH_ASSOC, anda boleh mengemas kini kod anda seperti berikut:

$results = $query->fetch(PDO::FETCH_ASSOC);
if($results && password_verify($ctPassword, $results['password'])) {
    foreach($results as $key => $value) {
        $_SESSION[$key] = $value;
    }
}

Ini akan menetapkan semua secara automatik mendapatkan semula nilai sebagai pembolehubah sesi, menjadikannya mudah untuk mengakses butiran pengguna pada halaman 'Akaun Saya'.

Atas ialah kandungan terperinci Di manakah Pengesahan Kata Laluan Perlu Diletakkan dalam Skrip Log Masuk?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn