Lietotājvārda pieejamības pārbaude
Pašlaik mūsu reģistrācijai ir viena problēma - jauns mūsu vietnes lietotājs var reģistrēties ar jau esošu lietotājvārdu, kas, protams, nav pieņemami.
Lai atrisinātu šo problēmu, pirms pieprasījuma
pievienot jaunu lietotāju datu bāzē,
jāizpilda SELECT vaicājums, kurš
pārbauda, vai vēlamais lietotājvārds ir aizņemts vai nē. Ja
nav aizņemts - reģistrējam, ja aizņemts - nereģistrējam, bet
izvadām par to ziņojumu.
Uzrakstīsim šo kodu:
<?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 {
// lietotājvārds ir aizņemts, izvadīsim par to ziņojumu
}
}
?>
Modificējiet savu kodu tā, lai mēģinot reģistrēties, tiktu veikta lietotājvārda aizņemtības pārbaude un, ja tas ir aizņemts, - izvadiet ziņojumu par to un lūdziet ievadītu citu lietotājvārdu.