@alexei_2002

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

Нужна помощь с условием добавления пользователя в базу данных, а именно условие того что пользователя с $chat_id в базе данных не существует. Кол-во элементов массива неизвестно.
function add_user($pdo, $first_name, $last_name, $chat_id, $name){
    $getUsers = "SELECT * FROM `users`";
    $getUsers = $pdo->query($getUsers);

    while ($user = $getUsers->fetch(PDO::FETCH_ASSOC)) {
    	$usersArr[] = $user;
  	}
  	if (если в массиве $usersArr нет значения из переменной $chat_id)) {
        $addUser = $pdo->prepare("INSERT INTO `users`(`first_name`, `last_name`, `chat_id`, `name`) 
            VALUES (:first_name, :last_name, :chat_id, :name)");
      	$addUser->execute(array('first_name' => $first_name, 'last_name' => $last_name, 'chat_id' => $chat_id, 'name' => $name));
    }
}
  • Вопрос задан
  • 83 просмотра
Решения вопроса 1
karabanov
@karabanov
Системный администратор
Тут не надо ничего в массиве искать. Добавь в SELECT условие WHERE chat_id=$chat_id. Если запрос ничего не вернёт, значит пользователя с таким chat_id в базе нет.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы