การตรวจสอบว่าชื่อผู้ใช้งานถูกใช้งานแล้วหรือไม่
ขณะนี้การลงทะเบียนของเรามีปัญหาอย่างหนึ่ง - ผู้ใช้ใหม่ของเว็บไซต์ของเราสามารถลงทะเบียน ด้วยชื่อผู้ใช้งานที่มีอยู่แล้ว ซึ่งแน่นอนว่า เป็นสิ่งที่ยอมรับไม่ได้
เพื่อแก้ไขปัญหานี้ ก่อนที่จะส่งคำขอ
เพิ่มผู้ใช้ใหม่ลงในฐานข้อมูล
จำเป็นต้องดำเนินการคำสั่ง SELECT
ที่จะตรวจสอบว่าชื่อผู้ใช้งานที่ต้องการนั้นว่างหรือถูกใช้ไปแล้ว
หากยังว่างอยู่ - ก็ลงทะเบียน หากถูกใช้ไปแล้ว -
ก็ไม่ต้องลงทะเบียน แต่ให้แสดงข้อความเกี่ยวกับเรื่องนี้แทน
เรามาเขียนโค้ดนี้กัน:
<?php
if (!empty($_POST['login']) and !empty($_POST['password'])) {
$login = $_POST['login'];
$password = $_POST['password'];
$query = "SELECT * FROM users WHERE login='$login'";
$user = mysqli_fetch_assoc(mysqli_query($link, $query));
if (empty($user)) {
$query = "INSERT INTO users SET login='$login', password='$password'";
mysqli_query($link, $query);
$_SESSION['auth'] = true;
} else {
// ชื่อผู้ใช้งานถูกใช้ไปแล้ว แสดงข้อความเกี่ยวกับเรื่องนี้
}
}
?>
โปรดปรับเปลี่ยนโค้ดของคุณ เพื่อให้เมื่อพยายาม ลงทะเบียน จะมีการตรวจสอบว่าชื่อผู้ใช้งานถูกใช้ไปแล้วหรือไม่ และหากถูกใช้ไปแล้ว - ให้แสดงข้อความ เกี่ยวกับเรื่องนี้ และขอให้ป้อนชื่อผู้ใช้อื่น