주문내역 엑셀로 다운로드시 이미지를 엑셀에 보이게 하고싶습니다.

주문내역 엑셀로 다운로드시 이미지를 엑셀에 보이게 하고싶습니다.

QA

주문내역 엑셀로 다운로드시 이미지를 엑셀에 보이게 하고싶습니다.

본문

주문내역 엑셀로 다운로드시 이미지를 엑셀에 보이게 하고싶습니다.

 


<?php
$sub_menu = '400400';
include_once('./_common.php');
 
auth_check($auth[$sub_menu], "w");
 
// 주문정보
$sql = " select *
            from {$g5['g5_shop_order_table']}
             ";
$result = sql_query($sql);
 
if(!_num_rows($result))
    alert_close('배송처리할 주문 내역이 없습니다.');
 
function column_char($i) { return chr( 65 + $i ); }
 
if (phpversion() >= '5.2.0') {
    include_once(G5_LIB_PATH.'/PHPExcel.php');
    
    $headers = array('주문번호', '상품이미지', '수량');
    $widths  = array(20, 15, 10);
    $header_bgcolor = 'FFABCDEF';
    $last_char = column_char(count($headers) - 1);
 
    for($i=1; $row=sql_fetch_array($result); $i++) {
        $rows[] = 
                    array(' '.$row['od_id'], 
                        $row['item_image']

 
                        
);
    }
 
    $data = array_merge(array($headers), $rows);
 
    $excel = new PHPExcel();
    $excel->setActiveSheetIndex(0)->getStyle( "A1:${last_char}1" )->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID)->getStartColor()->setARGB($header_bgcolor);
    $excel->setActiveSheetIndex(0)->getStyle( "A:$last_char" )->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER)->setWrapText(true);
    foreach($widths as $i => $w) $excel->setActiveSheetIndex(0)->getColumnDimension( column_char($i) )->setWidth($w);

 
    //추가하려고 시도중인 소스 부분시작
    for($i=1; $rowNumber=sql_fetch_array($result); $i++) {
    $excel->getActiveSheet()->setCellValue('A'.$rowNumber, $p_od_id);
 
    if($item_image)
    {
    $objDrawing = new PHPExcel_Worksheet_Drawing();
    $objDrawing->setPath($item_image);
    $objDrawing->setCoordinates('B'.$rowNumber);
    $objDrawing->setWorksheet($excel->getActiveSheet());
    $excel->getActiveSheet()->getRowDimension($rowNumber)->setRowHeight(120);
    }
    else
    {
    $excel->getActiveSheet()->setCellValue('B'.$rowNumber, '');
    }
  
    // 추가하려고 시도중인 소스 부분 끝
 
    $excel->getActiveSheet()->fromArray($data,NULL,'A1');
 
    header("Content-Type: application/octet-stream");
    header("Content-Disposition: attachment; filename=\"allorderlist_".date("ymd", time()).".xls\"");
    header("Cache-Control: max-age=0");
 
    $writer = PHPExcel_IOFactory::createWriter($excel, 'Excel5');
    $writer->save('php://output');
} 
?>

 

// 추가하려고 시도중인 소스 부분을 보시면 다른데 참조해서 변경하려는데 원래 다운로드 php파일에서 데이터베이스의 값들을 다운로드하기위해서 배열을 쓰고 있어서 배열에 대한 지식이 부족하여 해결방법이 있는지 문의드립니다.

 

도움 부탁드립니다.

이 질문에 댓글 쓰기 :

답변 2

답변을 작성하시기 전에 로그인 해주세요.
전체 29
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT