채택완료

영카트 주문상태 일괄변경 방법

주문내역 리스트페이지 에서 주문상태를 일괄변경 하는 방법이 있을까요?

현재는 개별 건마다 들어가서 수정해야 하는 것 같네요.

결제수단에서 무통장 입금을 사용하지 않아서 입금은 모두 확인된 상태로 접수가 되는데요.
[입금]인 주문건들을 하나씩 들어가서 [준비]로 바꾸는 게 번거로움이 있어서요.

 

영카트 주문상태를 일괄로 변경하는 방법이 있을지 문의 드립니다.

답변 3개 / 댓글 1개

채택된 답변
+20 포인트

답변에 대한 댓글 1개

질문을 정확히 이해하고 도움 주셨네요. 감사합니다.
관리자페이지 
/adm/shop_admin/orderlist.php
<th scope="col">
    <input type="checkbox" id="chkall" onclick="check_all(this.form)">
</th>
<td>
    <input type="checkbox" name="chk[]" value="<?php echo $od['od_id']; ?>">
</td>

<select name="change_status" required>
    <option value="">주문상태 선택</option>
    <option value="주문">주문</option>
    <option value="입금">입금</option>
    <option value="준비">배송준비</option>
    <option value="배송">배송중</option>
    <option value="완료">배송완료</option>
    <option value="취소">취소</option>
</select>

<input type="submit" name="act_button" value="선택주문상태변경">


<form name="forderlist" method="post" action="./orderstatusupdate.php">

------------------------------------------------------------------------------------------------------------------------------------

/adm/shop_admin/orderstatusupdate.php

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

if (!isset($_POST['chk']) || !is_array($_POST['chk']))
    alert('선택된 주문이 없습니다.');

$change_status = trim($_POST['change_status']);
if (!$change_status)
    alert('변경할 주문상태를 선택하세요.');

foreach ($_POST['chk'] as $od_id) {

    $od_id = clean_xss_tags($od_id);

    sql_query("
        update {$g5['g5_shop_order_table']}
        set od_status = '{$change_status}'
        where od_id = '{$od_id}'
    ");

    /* 히스토리 남기고 싶으면 */
    sql_query("
        insert into {$g5['g5_shop_order_history_table']}
        set
            od_id = '{$od_id}',
            oh_status = '{$change_status}',
            oh_comment = '관리자 일괄 변경',
            oh_datetime = '".G5_TIME_YMDHIS."'
    ");
}

alert('선택한 주문의 상태가 변경되었습니다.', './orderlist.php');


[프리랜서 광고 한줄 ^^]
해외서버관리/API개발/프로그램/APP/모바일/랜딩페이지/스포츠커뮤니티 (20년개발자노하우/사후관리) 010-5005-6102


 
방법은 간단한데 없으면 만들어서 사용해야 합니다.
아니면 의뢰를 하셔야 할 것입니다.

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