Когда у меня есть mysqli_multi_query, за которым следует mysqli_query, второй запрос завершается неудачно - PullRequest
1 голос
/ 01 августа 2011

У меня есть самозвонящая форма php, которая должна обновить базу данных, а затем отобразить изменения.Это общее представление о том, как выглядит код:

IF($condition)
    mysqli_multi_query($dbc,$multiple_update_query_str);
$result = mysqli_query($dbc,$select_query);
while($row = mysqli_fetch_array($result))
    echo    $row[0] . " " . $row[1] . " " . $row[2] . "<br>";

В первый раз, когда условие $ false, запрос на выборку работает отлично.Затем, когда условие $ true, обновление происходит в базе данных, но запрос на выборку не выполняется.

Сначала я подумал, что php-сервер опережает сервер mySQL, поэтому я использовал sleep (5) передвыход из оператора if, но выбор все равно не удался.

Я даже написал очень простой php-файл, который был почти таким же, как этот код.У него была такая же проблема.Что-то мне не хватает?

1 Ответ

1 голос
/ 01 августа 2011

, прежде чем вы сможете использовать mysqli_query, вы должны получить все результаты multy_query, чтобы разблокировать соединение по ссылке

try:

if($condition){
    mysqli_multi_query($dbc,$multiple_update_query_str);
    while(mysqli_next_result($dbc)){;}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...