상품리스트 엑셀 다운로드 csv > 영카트5 팁자료실

영카트5 팁자료실

상품리스트 엑셀 다운로드 csv 정보

상품리스트 엑셀 다운로드 csv

본문

/adm/shop_admin/itemlist.php 소스추가

<a href="#" class='btn_excel' style="background:green;color:#fff; padding:5px 10px; border-radius:5px;">엑셀 다운로드</a>

<script>
$('body').on('click', '.btn_excel', function(event) {
    event.preventDefault();
    var f = $('#fitemlistupdate')[0];
    f.action = './itemlist_excel.php';
    f.submit();
    f.action = '';
    return false;
});
</script>

/adm/shop_admin/itemlist_excel.php 파일추가

<?php
include_once('./_common.php');

auth_check($auth[$sub_menu], 'r');

$referer =  parse_url ( $_SERVER['HTTP_REFERER'] ) ;
parse_str( $referer['query'], $output);
foreach ($output as $key => $value) {
    ${$key} = $value;
}

$sql_common = " from {$g5['g5_shop_item_table']} a ,
                    {$g5['g5_shop_category_table']} b
              where (a.ca_id = b.ca_id";
if ($is_admin != 'super')
    $sql_common .= " and b.ca_mb_id = '{$member['mb_id']}'";
$sql_common .= ") ";
$sql_common .= $sql_search;

$sql = " SELECT * FROM g5_shop_item";

$result = sql_query($sql);

/* ================================= */
$type = 'csv'; //  comma-separated values, text 코마 구분 값 포맷의 파일
/* ================================= */

$file_alias ="itemlist_".date('Ymd').".{$type}";

header("Content-Type: application/vnd.ms-excel; charset=utf-8");
Header('Content-Disposition: attachment; filename=' . $file_alias);
header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
Header('Pragma: no-cache');
Header('Expires: 0');

/* ================================= */


    $filedName = array(
"분류",
"상품코드",
"상품명",
"기본설명"
);

    $prtPattern = "";
    foreach($filedName as $val )  {
        $prtPattern .= ',"%s"';
    }
    $prtPattern = substr($prtPattern, 1)."\r\n";

echo "\xEF\xBB\xBF";
    vprintf($prtPattern, $filedName );

$filedValues = array(
            preg_replace('/[\"]/', '""', $row['ca_id'])
,preg_replace('/[\"]/', '""', $row['it_id'])
,preg_replace('/[\"]/', '""', $row['it_name'])
,preg_replace('/[\"]/', '""', $row['it_basic'])
        );
        vprintf($prtPattern, $filedValues );
?>

개발한것 제외하느라 정상작동할진 모르겠네요 필요하신 분 쓰세용
팁자료실에 없어서 만드느라 힘들었네요 ㅠㅠ
추천
2
  • 복사

댓글 15개

꼭 필요한 좋은 Tip 감사합니다.
영캇트 5.3과 5.4에 적용해보았는데 아래 그림처럼
삼품 200개 정도 등록되어 있고 상품리스트 엑셀 다운로드해서 열어보면
깨진 글자로 2줄만 나옵니다.
어디를 손봐야 할까요?
유용한 팁 감사합니다. 알려주신 팁대로 적용을 해 보았는데, 엑셀파일은 만들어지지만 항목명만 있고, 파일안에 내용이 하나도 없는데, 어느 부분이 잘못된 것인지 모르겠네요.
혹시 5.3까지만 적용이 되는 팁일까요?
YoungCart Version 5.4.2.9 입니다.
© SIRSOFT
현재 페이지 제일 처음으로