Verificarea disponibilității login-ului
În prezent, înregistrarea noastră are o problemă - un nou utilizator al site-ului nostru se poate înregistra cu un login deja existent, ceea ce, desigur, este inacceptabil.
Pentru a rezolva problema, este necesar ca înainte de cererea
de adăugare a unui nou utilizator în baza
de date, să executați o interogare SELECT care
va verifica dacă login-ul dorit este ocupat sau nu. Dacă
nu este ocupat - înregistrăm, dacă este ocupat - nu
îl înregistrăm, ci afișăm un mesaj despre aceasta.
Haideți să scriem acest cod:
<?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 {
// login-ul este ocupat, afișăm un mesaj despre aceasta
}
}
?>
Modificați-vă codul astfel încât, la încercarea de înregistrare, să se efectueze o verificare a disponibilității login-ului și, dacă acesta este ocupat, - să afișați un mesaj despre aceasta și să cereți introducerea unui alt login.