Проверка на зафатеност на логин
Моментално нашата регистрација има еден проблем - новиот корисник на нашата веб-страница може да се регистрира под веќе постоечко корисничко име, што, секако , е неприфатливо.
За да се реши проблемот, неопходно е пред барањето
за додавање на нов корисник во базата на
податоци, да се изврши 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 {
// логин занят, выведем сообщение об этом
}
}
?>
Модифицирајте го вашиот код така што при обид за регистрација да се изврши проверка за зафатеност на корисничкото име и, доколку е зафатено, - да испечатите порака за тоа и да побарате внесување на друго корисничко име.