Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Melaksanakan Fungsi 'Ingat Saya' dengan Selamat dalam Sistem Log Masuk PHP Menggunakan Kuki Berterusan?
Kuki Berterusan untuk Fungsi Selamat "Ingat Saya" dalam Sistem Log Masuk PHP
Pengenalan
Melaksanakan ciri "ingat saya" dalam sistem log masuk PHP memerlukan menyimpan kuki selamat dalam pengguna pelayar. Kuki ini membenarkan pengguna kekal log masuk walaupun selepas menutup penyemak imbas mereka atau memulakan semula peranti mereka.
Struktur Pangkalan Data
Untuk menyimpan maklumat ingat saya dengan selamat, cipta jadual berasingan dalam pangkalan data anda:
CREATE TABLE `auth_tokens` ( `id` integer(11) not null UNSIGNED AUTO_INCREMENT, `selector` char(12), `token` char(64), `userid` integer(11) not null UNSIGNED, `expires` datetime, PRIMARY KEY (`id`) );
Medan pemilih dan token akan digunakan untuk menyimpan ingat saya maklumat.
Selepas Log Masuk
Apabila pengguna log masuk dan memilih pilihan "ingat saya", jana pemilih rawak (12 aksara) dan pengesah (33 bait) menggunakan fungsi random_bytes() atau kaedah yang serupa untuk memastikan kerawak.
Tetapkan kuki ingat saya menggunakan kod berikut:
setcookie( 'remember', $selector . ':' . base64_encode($authenticator), time() + 864000, // expires in 10 days '/', 'yourdomain.com', true, // TLS-only true // http-only );
Masukkan pemilih, pengesah cincang, ID pengguna dan masa tamat tempoh ke dalam jadual auth_tokens.
Mengesah Semula pada Muatan Halaman
Pada halaman berikutnya dimuatkan, jika pengguna belum log masuk dan ingat saya kuki ditetapkan:
Butiran
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Fungsi 'Ingat Saya' dengan Selamat dalam Sistem Log Masuk PHP Menggunakan Kuki Berterusan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!