запрос mysqli в цикле WHILE


1.) Можно ли вложить msqli_query в цикл while?

2.) Если да, то почему PHP ниже не записывает какие-либо данные в таблицу precords?

Если я повторяю переменную массива $build, она показывает правильно, но вставка mysqli ничего не записывает в таблицу в БД. Код нигде не выдает ошибок, так что же я упускаю из виду?

$data = mysqli_query($con,"SELECT * FROM Cart WHERE Buyer_ID='$_SESSION[cid]' AND Cart_Date='$_SESSION[cdate]'");
while($build = mysqli_fetch_array($data))
{ 
//echo $build[idex]."<br>";
mysqli_query($con,"INSERT INTO precords (precord,Buyer_ID,Account,Purchase_Date,Item_Number,Item_Qty,Item_Title,Item_FPrice,Item_FFLFlag,ccpass) VALUES ('$build[idex]','$build[Buyer_ID]','$build[Cart_Date]','$build[Item_Number]','$build[Item_Qty]','$build[Item_Title]','$build[Item_FPrice]','$build[Item_FFLFlag]','N')");
};

Спасибо за любую помощь.

* * P.S.-Этот код предназначен для перемещения определенных значений из временной таблицы / переменных сеанса в постоянная таблица записей, но цикл необходим, так как в корзине есть более одного продукта, связанного с пользователем/сеансом.

1 2

1 ответ:

Да, вы можете использовать его в цикле и

Вы можете добавить функцию mysql_error(), чтобы узнать, что с ней не так, и попытаться исправить ее или добавить ошибку в вопрос, чтобы мы могли сказать вам, что делать

    $data = mysqli_query($con,"SELECT * FROM Cart WHERE Buyer_ID='$_SESSION[cid]' AND Cart_Date='$_SESSION[cdate]'");
    while($build = mysqli_fetch_array($data))
    { 
    //echo $build[idex]."<br>";
    mysqli_query($con,"INSERT INTO precords
   (precord,Buyer_ID,Account,Purchase_Date,Item_Number,Item_Qty,Item_Title,Item_FPrice,Item_FFLFlag,ccpass)
    VALUES 
   ('$build[idex]','$build[Buyer_ID]','$build[Cart_Date]','$build[Item_Number]','$build[Item_Qty]','$build[Item_Title]','$build[Item_FPrice]','$build[Item_FFLFlag]','N')
    ") or die (mysql_error());
        };