오랫동안 도움만 받다가 찾는분이 계신것 같아 공유하고자 합니다.
제목 그대로,,, 배송처리된 제품을 정해진 시간후에 자동으로 완료로 넘기는 프로그램입니다.
1.날짜를 관리자가 쉽게 변경할 수 있도록 [쇼핑몰기본정보]에 변경하고자 하는 날짜를 추가합니다.
=====> sql에서 [yc4_default ] 테이블에 [de_besong_day] 필드를 int 값으로 추가합니다.
======> /adm/shop_admin/configform.php 파일에 아래의 내용을 적당한 곳에 삽입합니다.
배송완료 자동이동 <input type=text name=de_besong_day value='<?=$default[de_besong_day]?>' size=5 class=ed>일
<?=help("설정기간이 지나면 자동으로 배송중인 주문건이 완료로 이동됩니다. 0으로 설정하면 이 기능을 사용하지 않습니다.");?>
======> /adm/shop_admin/configformupdate.php 문서의 update 하는 부분에 아래의 내용을 추가합니다.
de_besong_day = '$de_besong_day',
2. [yc4_cart] 테이블에 [ct_status_b_date]필드를 datetime 으로 추가합니다.
======> /adm/shop_admin/ordercartupdate.php 문서에서 주문제품의 상태를 변경할때마다 날짜를 삽입하도록 변경해 줍니다. 나중에 이것을 비교하여 [완료]로 넘기게 됩니다. update 하는 부분에 ct_status_b_date = '$g4[time_ymdhis]', 를 추가합니다.
3. 저는 관리자 페이지를 실행할때마다 관리자가 정해놓은 날짜가 지난 배송건에 대하여 자동 처리하도록 하였습니다.
/adm/shop_admin/index.php 화면의 상단에 아래의 쿼리를 추가하면 됩니다.
$real_time_imsi = $g4[server_time] - (int)(86400 * $default[de_besong_day]);
$real_time_imsi = date("Y-m-d H:i:s", $real_time_imsi);
$sql = " update $g4[yc4_cart_table]
set ct_status = '완료'
where ct_status = '배송'
and ct_status_b_date <= '$real_time_imsi' ";
sql_query($sql);
댓글 7개
게시글 목록
| 번호 | 제목 |
|---|---|
| 1053 | |
| 1044 | |
| 1041 | |
| 1022 | |
| 978 | |
| 975 | |
| 974 | |
| 967 | |
| 964 | |
| 963 | |
| 962 | |
| 958 | |
| 957 | |
| 952 | |
| 934 | |
| 929 | |
| 923 | |
| 921 | |
| 905 | |
| 903 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기