A felhasználónév foglaltságának ellenőrzése
Jelenleg a regisztrációnknak egy problémája van - weboldalunk új felhasználója regisztrálhat egy már létező felhasználónév alatt, ami természetesen elfogadhatatlan.
A probléma megoldásához szükséges, hogy az új felhasználó
adatbázisba való hozzáadására irányuló kérés előtt
végrehajtsunk egy SELECT lekérdezést, amely
ellenőrzi, hogy a kívánt felhasználónév foglalt-e vagy sem. Ha
nem foglalt - regisztrálunk, ha foglalt - nem
regisztrálunk, hanem erről üzenetet jelenítünk meg.
Írjuk meg ezt a kódot:
<?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 {
// a felhasználónév foglalt, jelenítsünk meg erről üzenetet
}
}
?>
Módosítsa a kódját úgy, hogy a regisztráció megkísérlésekor végrehajtásra kerüljön a felhasználónév foglaltságának ellenőrzése, és ha az foglalt - jelenítsen meg erről üzenetet, és kérjen meg egy másik felhasználónév megadására.