@hooligan377

Как проверить два параметра в одном запросе к бд?

Нужно проверить существуют ли два параметра внутри одного запроса к бд...

Как проверить один, я знаю:
$result = query($mysqli, "SELECT * FROM user WHERE login=?", ['$_POST['login']'])->get_result()->fetch_assoc();

if($result > 0) {
echo 'Логин занят';
}else{
 // Продолжаем, если логин свободен..
}


Но как допустим проверить два параметра? Логин и например доступность номера телефона?

Говнокодить и создавать два запроса?

$login = query($mysqli, "SELECT * FROM user WHERE login=?", ['$_POST['login']'])->get_result()->fetch_assoc();
$num = query($mysqli, "SELECT * FROM user WHERE num=?", ['$_POST['num']'])->get_result()->fetch_assoc();
if($login> 0) {
echo 'Логин занят';
}elseif($num > 0){
echo 'Номер уже зарегистрирован';
}else{
// Продолжаем, если условия соблюдены
}
  • Вопрос задан
  • 103 просмотра
Решения вопроса 1
@QNA-1976
примерный код
$data = query($mysqli, 'select * from user where login = ? || num = ? limit 1', [
    $_POST['login'],
    $_POST['num']
])->get_result()->fetch_assoc();
if ($data) {
    if ($data['login'] == $_POST['login']) {
        echo 'Логин занят';
    }
    if ($data['num'] == $_POST['num']) {
        echo 'Номер уже зарегистрирован';
    }
}
// тут запрос вида ... insert into user set login = ?, num = ? [POST параметры]
// Вы зарегистрировались
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
SaveTime Москва
от 160 000 ₽
Amigoweb Магнитогорск
от 40 000 до 70 000 ₽
ЧИТАЙ-ГОРОД Москва
от 140 000 до 210 000 ₽
17 февр. 2020, в 00:30
1500 руб./за проект
16 февр. 2020, в 22:28
2000 руб./за проект
16 февр. 2020, в 22:03
1200 руб./в час