Я написал запрос MySQL, но я не получаю ожидаемый результат.Это делается для проверки того, что если имя пользователя и адрес электронной почты не совпадают с именем пользователя или адресом электронной почты другого лица, но не его собственным пользователем и адресом электронной почты.
Я пробовал многие другие запросы, например, EXCEPT query
$user_check_query = "SELECT * FROM users WHERE username='$username'
OR email='$email' AND NOT id='$id'";
$result = mysqli_query($db, $user_check_query);
$user = mysqli_fetch_assoc($result);
if ($user) { // if user exists
if ($user['username'] === $username) {
array_push($errors, "Username already exists");
}
if ($user['email'] === $email) {
array_push($errors, "Email already exists");
}
}
Предполагается, что в этом запросе выбирается строка, в которой имя пользователя = имя пользователя или пароль = пароль, но идентификатор не равен = id. Но если имя пользователя или адрес электронной почты не изменились, возвращается ошибка, что имя пользователя уже существует, а адрес электронной почты уже существует, но не должен.