Ошибка PHP команд из синхронизации

Я использую два подготовленных оператора в PHP / MySQLi для извлечения данных из базы данных MySQL. Однако, когда я запускаю операторы, я получаю ошибку «Команды не синхронизированы, вы не можете выполнить команду сейчас».

Вот мой код:

    $stmt = $mysqli->prepare("SELECT id, username, password, firstname, lastname, salt FROM members WHERE email = ? LIMIT 1";
    $stmt->bind_param('s', $loweredEmail);
    $stmt->execute();
    $stmt->store_result();
    $stmt->bind_result($user_id, $username, $db_password, $firstname, $lastname, $salt);
    $stmt->fetch();

    $stmt->free_result();
    $stmt->close();

    while($mysqli->more_results()){
        $mysqli->next_result();
    }

    $stmt1 = $mysqli->prepare("SELECT privileges FROM delegations WHERE id = ? LIMIT 1");
    //This is where the error is generated
    $stmt1->bind_param('s', $user_id);
    $stmt1->execute();
    $stmt1->store_result();
    $stmt1->bind_result($privileges);
    $stmt1->fetch();

Что я пробовал:

Перемещение подготовленных заявлений на два отдельных объекта.

Используя код:

while($mysqli->more_results()){
    $mysqli->next_result();
}
//To make sure that no stray result data is left in buffer between the first
//and second statements
Использование free_result () и mysqli_stmt-> close ()

PS: ошибка «Out of Sync» происходит из-за ошибки $ stmt1-> второго оператора

Ответы на вопрос(3)

Ваш ответ на вопрос