주문내역 엑셀출력 관련 도움요청드립니다.
본문
안녕하세요. 오랜만에 도움 요청드려요.
영카트 관리자 > 주문내역 엑셀출력
adm/shop_adminorderprintresult.php 에서 아래와 같이 엑셀출력하는 항목이 있는데
만약 $result_it7['it_7']); $result_it8['it_8']); $result_it9['it_9']); 에 값이 있다면
엑셀에서 위 세개값이 한줄이 아니라 다음줄로 나타나게끔 하려고 합니다.
원하는 결과값은 이미지로 올렸습니다.
$worksheet->write($i, 0, '');
$worksheet->write($i, 1, $row['od_b_name']);
$worksheet->write($i, 2, ' '.$row['od_b_tel']);
$worksheet->write($i, 3, ' '.$row['od_b_address']);
$worksheet->write($i, 4, $row['it_name']);
$worksheet->write($i, 5, $result_it7['it_7']);
$worksheet->write($i, 6, $result_it8['it_8']);
$worksheet->write($i, 7, $result_it9['it_9']);
중략
$worksheet->write($i, 16, $result_cart['ct_price'] * $result_cart['ct_qty']);
이걸 이렇게 반복문을 한번 돌리면 될까요??
$worksheet->write($i, 0, '');
$worksheet->write($i, 1, $row['od_b_name']);
$worksheet->write($i, 2, ' '.$row['od_b_tel']);
$worksheet->write($i, 3, ' '.$row['od_b_address']);
$worksheet->write($i, 4, $row['it_name']);
for ($k = 0; $k < 5; $k++) {
if($result_it7['it_7']){
$worksheet->write($i, 5, $result_it7['it_7']);
} else if($result_it7['it_8']){
$worksheet->write($i, 6, $result_it8['it_8']);
} else if($result_it7['it_9']){
$worksheet->write($i, 7, $result_it9['it_9']);
}
}
중략
$worksheet->write($i, 16, $result_cart['ct_price'] * $result_cart['ct_qty']);
답변 1
다음 코드가 도움이 될지 모르겠습니다.
$worksheet->write($i, 0, '');
$worksheet->write($i, 1, $row['od_b_name']);
$worksheet->write($i, 2, ' '.$row['od_b_tel']);
$worksheet->write($i, 3, ' '.$row['od_b_address']);
$worksheet->write($i, 4, $row['it_name']);
$worksheet->write($i, 5, $result_it7['it_7']);
$i_temp = 0;
if (empty($result_it8['it_8']) == false) {
$i_temp++;
}
$worksheet->write($i + $i_temp, 6 - $i_temp, $result_it8['it_8']);
if (empty($result_it9['it_9']) == false) {
$i_temp++;
}
$worksheet->write($i + $i_temp, 7 - $i_temp, $result_it9['it_9']);
중략
$worksheet->write($i, 16, $result_cart['ct_price'] * $result_cart['ct_qty']);
$i += $i_temp;