본문 바로가기
MySql

MySQL WHILE 루프의 mysqli 쿼리

by 베이스 공부 2020. 12. 28.
반응형

1.) while 루프 안에 msqli_query를 중첩시킬 수 있습니까?

2.) 그렇다면 왜 아래의 PHP는 프리 코드 테이블에 데이터를 쓰지 않습니까?

$ build 배열 변수를 에코하면 제대로 표시되지만 mysqli 삽입은 DB의 테이블에 아무것도 쓰지 않습니다. 이 코드는 어디에서나 오류가 발생하지 않으므로 이것에 대해 무엇을 놓치고 있습니까?

$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')");
};

도움을 주셔서 감사합니다.

** 추신 -이 코드는 특정 값을 TEMPORARY 테이블 / 세션 변수에서 영구 레코드 테이블로 이동하기위한 것이지만 사용자 / 세션과 관련된 카트에 둘 이상의 제품이 있으므로 루프가 필요합니다.

 

해결 방법

 

예, 루프에서 사용할 수 있습니다.

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());
};

 

참조 페이지 https://stackoverflow.com/questions/17457385

 

 

반응형

댓글