따듯한 사람은 곤경에 처한 사람을 모른채 하지 않는다

따듯한 사람은 곤경에 처한 사람을 모른채 하지 않는다

QA

따듯한 사람은 곤경에 처한 사람을 모른채 하지 않는다

답변 1

본문

안녕하세요 그누 x쵸딩입니다.

리스트에서 게시글을 엑셀로 받는데

글별로 한 행씩 잘 다운로드됩니다. 

 

그런데 문제가 조금 있습니다.

게시글에 배열로 저장된 필드($total_price)가 있어

$total_price 배열갯수에 따라

어떤글은 3행, 5행, 2행 이런식으로 다운로드 되어야 하는데

wr_id마다 한줄씩만 다운되니 배열은 반영이 안된다는 것입니다.

 

코드는 이렇습니다.

 

 for ($i=2; $row= sql_fetch_array($result); $i++)
 {  
     
$wr_20 = explode("|", $row['wr_20']); //주소
$p_color = explode("|", $row['p_color']);
$p_size = explode("|", $row['p_size']);
$p_qty = explode("|", $row['p_qty']);
$total_price = explode("|", $row['total_price']);
$p_img_url = explode("|", $row['p_img_url']); //
$p_url = explode("|", $row['p_url']); //
$tracking = explode("|", $row['tracking']); 
    // Add some data

 

     $objPHPExcel->setActiveSheetIndex(0)
                 ->setCellValue("A$i", "$i")     
                 ->setCellValue("B$i", ".")
                 ->setCellValue("C$i", "$row[wr_14]")                     
                 ->setCellValue("D$i", "$row[wr_16]")
                 ->setCellValue("E$i", "$row[wr_15]")                     
                 ->setCellValue("F$i", "$wr_20[0]")                 
                 ->setCellValue("G$i", "$wr_20[1]")    

                 ->setCellValue("Q$i", "$p_color[$j]")                     
                 ->setCellValue("R$i", "$p_size[$j]")
                 ->setCellValue("S$i", "$p_qty[$j]")
                 ->setCellValue("T$i", "$total_price[0]")
                 ->setCellValue("U$i", "$p_img_url[0]")
                 ->setCellValue("V$i", "$p_url[0]")                     
                 ->setCellValue("W$i", "$tracking[0]");    
                 
 }
 

그래서 이걸 for문으로 밖에서 다시 감싸서 즉, 

$total_price = explode("|", $row['total_price']);
for($k = 0; $k < count($total_price); $k++) {
   $j = $k + 1;

 

 <여기에 위의 엑셀 코드가 반복되게  이런식으로 할 수 없을까요?>

 

그렇게 하면 $total_price 배열갯수만큼  엑셀 for문이 반복될거 같아

제가 원하는대로 다운로드 되지 않을까해서요,,,,

아니면 어떻게 해야 할지 막막하네요

고수님들의 도움을 기다려봅니다.

 

*코로나 장난아닌데 건강하세요.

 

 

 

 

이 질문에 댓글 쓰기 :

답변 1


$total_price = explode("|", $row['total_price']);
for($k = 0; $k < count($total_price); $k++) {
     if($k>0) $i++;

     $objPHPExcel->setActiveSheetIndex(0)
                 ->setCellValue("A$i", "$i")     
                 ->setCellValue("B$i", ".")
                 ->setCellValue("C$i", "$row[wr_14]")                     
                 ->setCellValue("D$i", "$row[wr_16]")
                 ->setCellValue("E$i", "$row[wr_15]")                     
                 ->setCellValue("F$i", "$wr_20[0]")                 
                 ->setCellValue("G$i", "$wr_20[1]")    
                 ->setCellValue("Q$i", "$p_color[$j]")                     
                 ->setCellValue("R$i", "$p_size[$j]")
                 ->setCellValue("S$i", "$p_qty[$j]")
                 ->setCellValue("T$i", "$total_price[$k]")
                 ->setCellValue("U$i", "$p_img_url[0]")
                 ->setCellValue("V$i", "$p_url[0]")                     
                 ->setCellValue("W$i", "$tracking[0]");    
}

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 125,873
© SIRSOFT
현재 페이지 제일 처음으로