로그인 중복 확인
현재 우리의 등록 과정에는 한 가지 문제가 있습니다 - 우리 사이트의 새로운 사용자가 이미 존재하는 로그인으로 등록할 수 있다는 점이며, 당연히 이는 허용될 수 없습니다.
이 문제를 해결하기 위해서는 데이터베이스에
새 사용자를 추가하는 요청을 보내기 전에,
원하는 로그인이 사용 중인지 아닌지를 확인하는
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 {
// 로그인이 사용 중입니다. 이에 대한 메시지를 출력합니다.
}
}
?>
등록을 시도할 때 로그인의 중복 확인이 수행되고, 만약 사용 중이라면 - 이에 대한 메시지를 출력하고 다른 로그인을 입력하도록 요청하도록 여러분의 코드를 수정하세요.