Penerangan Isu:
Seorang pengguna mengalami masalah dengan PHP mereka skrip log masuk. Skrip ini bertujuan untuk menanyakan pangkalan data dan memasukkan token dan kod pengesahan am pengguna ke dalam jadual berasingan berdasarkan kelayakan pengguna. Walau bagaimanapun, skrip pada masa ini tidak menyemak jadual token. Selain itu, pengguna ingin memaparkan nama pengguna pengguna yang log masuk pada halaman yang memerlukan sekatan akses.
Penyelesaian:
1. Pembersihan Pangkalan Data:
Jadual MySQL yang disediakan tidak selamat. Lajur kata laluan hendaklah disimpan dalam format cincang untuk perlindungan tambahan.
2. Memusatkan Fungsi Log Masuk:
Daripada mengulangi kod log masuk pada berbilang halaman, cipta fail init.php yang berasingan untuk mengendalikan sambungan pangkalan data dan permulaan log masuk. Fail ini boleh disertakan dalam setiap halaman PHP yang memerlukan fungsi log masuk.
3. Skrip Log Masuk yang Diperbaiki:
Tulis semula skrip log masuk dalam ajax/login.php untuk membersihkan input pengguna, mengesahkan kelayakan terhadap pangkalan data dan menggunakan sesi PHP untuk menyimpan maklumat pengguna yang log masuk.
4. Menggunakan Ajax untuk Log Masuk:
Laksanakan Ajax untuk mengendalikan permintaan log masuk secara tidak segerak daripada borang log masuk. Ini menghalang pemuatan semula halaman dan memberikan pengalaman yang lebih mesra pengguna.
5. Sekatan Akses:
Pada halaman yang memerlukan log masuk, tambahkan semakan pengesahan pada permulaan untuk mengubah hala pengguna yang tidak disahkan ke halaman log masuk.
6. Memaparkan Nama Pengguna:
Gunakan sesi PHP untuk menyimpan nama pengguna pengguna yang log masuk. Pada halaman di mana nama pengguna harus dipaparkan, hanya keluarkan nilai menggunakan echo $_SESSION['username'];.
Petua Tambahan:
Atas ialah kandungan terperinci Bagaimana untuk Membina Sistem Log Masuk Ahli Sahaja yang Selamat dan Mesra Pengguna dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!