오랫동안 도움만 받다가 찾는분이 계신것 같아 공유하고자 합니다.
제목 그대로,,, 배송처리된 제품을 정해진 시간후에 자동으로 완료로 넘기는 프로그램입니다.
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개
게시글 목록
| 번호 | 제목 |
|---|---|
| 810 | |
| 807 | |
| 789 | |
| 779 | |
| 769 | |
| 723 | |
| 722 | |
| 720 | |
| 716 | |
| 713 | |
| 714 | |
| 707 | |
| 706 | |
| 687 | |
| 690 | |
| 685 | |
| 673 | |
| 672 | |
| 671 | |
| 661 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기