테스트 사이트 - 개발 중인 베타 버전입니다

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

phpers 4년 전 조회 3,839

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

 

</p>

<p><?php</p>

<p>$sub_menu = '400400';</p>

<p>include_once('./_common.php');</p>

<p> </p>

<p>auth_check($auth[$sub_menu], "w");</p>

<p> </p>

<p>// 주문정보</p>

<p>$sql = " select *</p>

<p>            from {$g5['g5_shop_order_table']}</p>

<p>             ";</p>

<p>$result = sql_query($sql);</p>

<p> </p>

<p>if(!@sql_num_rows($result))</p>

<p>    alert_close('배송처리할 주문 내역이 없습니다.');</p>

<p> </p>

<p>function column_char($i) { return chr( 65 + $i ); }</p>

<p> </p>

<p>if (phpversion() >= '5.2.0') {</p>

<p>    include_once(G5_LIB_PATH.'/PHPExcel.php');</p>

<p>    </p>

<p>    $headers = array('주문번호', '상품이미지', '수량');</p>

<p>    $widths  = array(20, 15, 10);</p>

<p>    $header_bgcolor = 'FFABCDEF';</p>

<p>    $last_char = column_char(count($headers) - 1);</p>

<p> </p>

<p>    for($i=1; $row=sql_fetch_array($result); $i++) {</p>

<p>        $rows[] = </p>

<p>                    array(' '.$row['od_id'], </p>

<p>                        $row['item_image']</p>

<p>

 </p>

<p>                        </p>

<p>);</p>

<p>    }</p>

<p> </p>

<p>    $data = array_merge(array($headers), $rows);</p>

<p> </p>

<p>    $excel = new PHPExcel();</p>

<p>    $excel->setActiveSheetIndex(0)->getStyle( "A1:${last_char}1" )->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID)->getStartColor()->setARGB($header_bgcolor);</p>

<p>    $excel->setActiveSheetIndex(0)->getStyle( "A:$last_char" )->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER)->setWrapText(true);</p>

<p>    foreach($widths as $i => $w) $excel->setActiveSheetIndex(0)->getColumnDimension( column_char($i) )->setWidth($w);</p>

<p>

 </p>

<p>    //추가하려고 시도중인 소스 부분시작</p>

<p>    for($i=1; $rowNumber=sql_fetch_array($result); $i++) {</p>

<p>    $excel->getActiveSheet()->setCellValue('A'.$rowNumber, $p_od_id);</p>

<p> </p>

<p>    if($item_image)</p>

<p>    {</p>

<p>    $objDrawing = new PHPExcel_Worksheet_Drawing();</p>

<p>    $objDrawing->setPath($item_image);</p>

<p>    $objDrawing->setCoordinates('B'.$rowNumber);</p>

<p>    $objDrawing->setWorksheet($excel->getActiveSheet());</p>

<p>    $excel->getActiveSheet()->getRowDimension($rowNumber)->setRowHeight(120);</p>

<p>    }</p>

<p>    else</p>

<p>    {</p>

<p>    $excel->getActiveSheet()->setCellValue('B'.$rowNumber, '');</p>

<p>    }</p>

<p>  </p>

<p>    // 추가하려고 시도중인 소스 부분 끝</p>

<p> </p>

<p>    $excel->getActiveSheet()->fromArray($data,NULL,'A1');</p>

<p> </p>

<p>    header("Content-Type: application/octet-stream");</p>

<p>    header("Content-Disposition: attachment; filename=\"allorderlist_".date("ymd", time()).".xls\"");</p>

<p>    header("Cache-Control: max-age=0");</p>

<p> </p>

<p>    $writer = PHPExcel_IOFactory::createWriter($excel, 'Excel5');</p>

<p>    $writer->save('php://output');</p>

<p>} </p>

<p>?></p>

<p>

 

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

 

도움 부탁드립니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트

주문내역 엑셀로 다운로드시 이미지 전체주소를 다운로드 할수있도록 수정 하시면 될것 같은데요.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

의뢰를 해보세요 ㅎㅎ

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인