#190 비회원 장바구니 기능 추가

This commit is contained in:
chicpro
2013-05-31 10:17:03 +09:00
parent 2f80daf2d5
commit 707fad5451
6 changed files with 58 additions and 37 deletions

View File

@ -6,7 +6,6 @@ include_once('./_common.php');
$html_title = '주문 내역 수정';
$alt_msg1 = '주문번호 오류입니다.';
$mb_guest = '비회원';
$hours = 6; // 설정 시간이 지난 주문서 없는 장바구니 자료 삭제
$cart_title1 = '쇼핑';
$cart_title2 = '완료';
@ -22,7 +21,7 @@ include_once(G4_ADMIN_PATH.'/admin.head.php');
// 설정 시간이 지난 주문서 없는 장바구니 자료 삭제
//------------------------------------------------------------------------------
$keep_term = $default['de_cart_keep_term'];
if (!$keep_term) $keep_term = 15; // 기본값 15
if (!$keep_term) $keep_term = 1; // 기본값 1일
$beforetime = date('Y-m-d H:i:s', ( G4_SERVER_TIME - (86400 * $keep_term) ) );
$sql = " delete from {$g4['shop_cart_table']} where ct_status = '$cart_title1' and ct_time <= '$beforetime' ";
sql_query($sql);

View File

@ -5,11 +5,15 @@
// 장바구니 건수 검사
function get_cart_count($uq_id)
{
global $g4;
global $g4, $default;
$sql = " select count(ct_id) as cnt from {$g4['shop_cart_table']} where uq_id = '$uq_id' ";
if($default['de_cart_keep_term']) {
$ctime = date('Y-m-d H:i:s', G4_SERVER_TIME - ($default['de_cart_keep_term'] * 86400));
$sql .= " and ct_time > '$ctime' ";
}
$row = sql_fetch($sql);
$cnt = (int)$row[cnt];
$cnt = (int)$row['cnt'];
return $cnt;
}
@ -926,6 +930,39 @@ function get_new_od_id()
return $od_id;
}
// uq_id 설정
function set_unique_id($direct)
{
global $default;
if ($direct) {
$tmp_uq_id = get_session('ss_uq_direct');
if(!$tmp_uq_id) {
$tmp_uq_id = get_uniqid();
set_session('ss_uq_direct', $tmp_uq_id);
}
} else {
// 비회원장바구니 uq_id 쿠키설정
if($default['de_guest_cart_use']) {
$g_cart_uq_id = get_cookie('ck_guest_cart_uqid');
if($g_cart_uq_id) {
set_session('ss_uq_id', $g_cart_uq_id);
set_cookie('ck_guest_cart_uqid', $g_cart_uq_id, ($default['de_cart_keep_term'] * 86400));
} else {
$tmp_uq_id = get_uniqid();
set_session('ss_uq_id', $tmp_uq_id);
set_cookie('ck_guest_cart_uqid', $tmp_uq_id, ($default['de_cart_keep_term'] * 86400));
}
} else {
$tmp_uq_id = get_session('ss_uq_id');
if(!$tmp_uq_id) {
$tmp_uq_id = get_uniqid();
set_session('ss_uq_id', $tmp_uq_id);
}
}
}
}
// 상품 목록 : 관련 상품 출력
function display_relation_item($it_id, $width, $height, $rows=3)
{

View File

@ -55,8 +55,12 @@ $sql = " select a.ct_id,
b.ca_id
from {$g4['shop_cart_table']} a left join {$g4['shop_item_table']} b on ( a.it_id = b.it_id )
where a.uq_id = '$s_uq_id'
and a.ct_num = '0'
order by a.ct_id ";
and a.ct_num = '0' ";
if($default['de_cart_keep_term']) {
$ctime = date('Y-m-d H:i:s', G4_SERVER_TIME - ($default['de_cart_keep_term'] * 86400));
$sql .= " and a.ct_time > '$ctime' ";
}
$sql .= " order by a.ct_id ";
$result = sql_query($sql);
$good_info = '';

View File

@ -1,6 +1,9 @@
<?php
include_once('./_common.php');
// uq_id 설정
set_unique_id($sw_direct);
// 회원일 경우 자신의 장바구니 상품 uq_id 값을 변경
if($is_member) {
$tmp_uq_id = get_session('ss_uq_id');

View File

@ -54,8 +54,12 @@ $sql = " select a.ct_id,
b.ca_id
from {$g4['shop_cart_table']} a left join {$g4['shop_item_table']} b on ( a.it_id = b.it_id )
where a.uq_id = '$s_uq_id'
and a.ct_num = '0'
order by a.ct_id ";
and a.ct_num = '0' ";
if($default['de_cart_keep_term']) {
$ctime = date('Y-m-d H:i:s', G4_SERVER_TIME - ($default['de_cart_keep_term'] * 86400));
$sql .= " and a.ct_time > '$ctime' ";
}
$sql .= " order by a.ct_id ";
$result = sql_query($sql);
$good_info = '';

View File

@ -1,35 +1,9 @@
<?php
include_once('./_common.php');
// 비회원장바구니 uq_id 쿠키설정
if($default['de_guest_cart_use']) {
$g_cart_uq_id = get_cookie('ck_guest_cart_uqid');
if($g_cart_uq_id) {
set_session('ss_uq_id', $g_cart_uq_id);
set_cookie('ck_guest_cart_uqid', $g_cart_uq_id, ($default['de_cart_keep_term'] * 86400));
} else {
if(!$sw_direct) {
$tmp_uq_id = get_uniqid();
set_session('ss_uq_id', $tmp_uq_id);
set_cookie('ck_guest_cart_uqid', $tmp_uq_id, ($default['de_cart_keep_term'] * 86400));
}
}
}
if ($sw_direct) {
$tmp_uq_id = get_session('ss_uq_direct');
if(!$tmp_uq_id) {
$tmp_uq_id = get_uniqid();
set_session('ss_uq_direct', $tmp_uq_id);
}
}
else {
$tmp_uq_id = get_session('ss_uq_id');
if(!$tmp_uq_id) {
$tmp_uq_id = get_uniqid();
set_session('ss_uq_id', $tmp_uq_id);
}
}
// uq_id 설정
set_unique_id($sw_direct);
$tmp_uq_id = get_session('ss_uq_id');
// 브라우저에서 쿠키를 허용하지 않은 경우라고 볼 수 있음.
if (!$tmp_uq_id)