PHP mysqli_fetch_assoc для двух независимых запросов - PullRequest
0 голосов
/ 29 января 2019

Я обнаружил, что есть некоторые связанные проблемы с mysqi_fetch_assoc онлайн.
Но мой вопрос отличается от них, я не выполняю два одинаковых запроса или зацикливаю похожий массив, поэтому не помогает указатель data_seek.

Пожалуйста, выслушайте меня, у меня два разных запроса, которые выполняются в двух разных таблицах, поэтому они независимы.Затем я заметил, что второй запрос никогда не будет выполнен должным образом.Я попытался переключить оба запроса, затем заметил, что будет выполнен только первый.
Так что я создал myArrayA для хранения некоторой информации, чтобы я мог знать, где и как это вызвано, именно тогда я заметил, что второй цикл while будетполностью пропускается с оператором if else, поэтому $ sql не будет назначен.

Я также попытался изменить один из mysqi_fetch_assoc на mysqi_fetch_array, все тот же.Это проблема со ссылками?
Я новичок в этом, любезно сообщите мне, если есть какой-то документ, который я пропустил, что есть какая-то похожая проблема с решением, я закрою вопрос, если таковой имеется.

P / S: я могу обновить полный запрос, если это необходимо, когда я вернусь к работе

 $sql_A = "some query from table A;";
 $result_A = mysqli_query($con, $sql_A);

 while($row_A = mysqli_fetch_assoc($result_A)){
 if ($row_A['myguest'] == "")
 {       
      array_push($mystdclass->myArrayA, $row_A['myguest']);
      array_push($mystdclass->myArrayA, "if in rowA");

      $sql = "query;";
 }
 else 
 {
      array_push($mystdclass->myArrayA, $row_A['myguest']);
      array_push($mystdclass->myArrayA, "else in rowA");

      $sql = "query;";
 }
 }

 $result = mysqli_query($con, $sql);
 array_push($mystdclass->myArrayA, "result A in");

 while($row = mysqli_fetch_object($result)){
      array_push($mystdclass->myArrayA, $sql);
      array_push($mystdclass->myArrayA, $row->something);
      array_push(($mystdclass->infoArray, array(something from the query);
 }

 array_push($mystdclass->myArrayA, "A out");
 $sql_B = "some query on table B;";
 $result_B = mysqli_query($con, $sql_B);
 array_push($mystdclass->myArrayA, $sql_B);

 while($row_B = mysqli_fetch_object($result_B)){
      array_push($mystdclass->myArrayA, "before B while");

      if ($row_B['mycustomer'] == "")
      {
           array_push($mystdclass->myArrayA, "cust if in");           
           $sql_cust = "some query;";

      }
      else 
      {
           array_push($mystdclass->myArrayA, "cust else ");
           $sql_cust = "query;";
      }
 }
 $result_cust = mysqli_query($con, $sql_cust);
 array_push($mystdclass->myArrayA, "cust end while in");
 array_push($mystdclass->myArrayA, $sql_cust);
 while($row_cust = mysqli_fetch_object($result_cust)){
      array_push($mystdclass->myArrayA, "whats here");
      array_push($mystdclass->myArrayA, $row_cust->somethingcustomer);
      array_push($mystdclass->customer_group, array(some array in B));
  }

 array_push($mystdclass->myArrayA, "out out");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...