주문서엑셀저장 orderprintresult.php 질문합니다.
본문
$data = array('우편번호', '주소','id', '이름', '전화1', '전화2', '상품명', '수량', '선택사항', '배송비', '상품코드', '주문번호', '운송장번호', '전하실말씀');
...
...
$worksheet->write($i, 0, $row['od_b_zip1'].'-'.$row['od_b_zip2']);
$worksheet->write($i, 1, print_address($row['od_b_addr1'], $row['od_b_addr2'], $row['od_b_addr3'], $row['od_b_addr_jibeon']));
$worksheet->write($i, 2, $row['mb_id']);
$worksheet->write($i, 3, $row['od_b_name']);
$worksheet->write($i, 4, ' '.$row['od_b_tel']);
$worksheet->write($i, 5, ' '.$row['od_b_hp']);
$worksheet->write($i, 6, $row['it_name']);
$worksheet->write($i, 7, $row['ct_qty']);
$worksheet->write($i, 8, $row['ct_option']);
$worksheet->write($i, 9, $ct_send_cost);
$worksheet->write($i, 10, ' '.$row['it_id']);
$worksheet->write($i, 11, ' '.$row['od_id']);
$worksheet->write($i, 12, $row['od_invoice']);
$worksheet->write($i, 13, $row['od_memo']);
}
위와같이 mb_id를 추가 했는데요...
엑셀에선 주문자 id가 출력안됩니다.
제가 잘못넣었나요?
!-->답변 4
sql 문에 select 부분에 a.mb_id 를 추가해서 불러오셔야 합니다.
$sql = " SELECT a.md_id, a.od_id, od_b_zip1, od_b_zip2, od_b_addr1, od_b_addr2, od_b_addr3, od_b_addr_jibeon,mb_id, od_b_name, od_b_tel, od_b_hp, b.it_name, ct_qty, b.it_id, a.od_id, od_memo, od_invoice, b.ct_option, b.ct_send_cost, b.it_sc_type
FROM {$g5['g5_shop_order_table']} a, {$g5['g5_shop_cart_table']} b
where a.od_id = b.od_id ";
from 절에 보시면 {$g5['g5_shop_order_table']} a, {$g5['g5_shop_cart_table']} b 이렇게 되어있는데
주문테이블을 a, 장바구니 테이블을 b 라고 해서 두 테이블을 합쳐서 불러올때 저렇게 합니다.
!-->
말씀하신 소스가 좀 이상하긴 하지만 switch 문으로는 안되구요.
엑셀에 출력하기 전에
if(empty($row['mb_id'])) $row['mb_id'] = '비회원';
이렇게 넣으면 원하시는 대로 출력이 될것 같습니다.
!-->
$sql = " select SUM(IF(io_type = 1, (io_price * ct_qty), ((ct_price + io_price) * ct_qty))) as price,
SUM(ct_qty) as qty
from {$g5['g5_shop_cart_table']}
where mb_id = '{$row['mb_id']}'";
$sum = sql_fetch($sql);
switch($row['mb_id'])
{
case 1:
$ct_send_cost = '착불';
break;
case 2:
$ct_send_cost = '무료';
break;
default:
$ct_send_cost = '선불';
break;
}
이부분을 수정하여 비회원일경우 [비회원]이라고 엑셀에 출력가능한가요?
!-->
답변을 작성하시기 전에 로그인 해주세요.