-
-
- // 장바구니 클래스
- /*
- 사용 지침:
- 생성자 카트 매개변수를 사용할 수 있습니다:
- cart($cartname = 'myCart', $session_id = '', $savetype = 'session', $cookietime = 86400, $cookiepath = '/', $cookiedomain = '')
- $cartname은 장바구니의 식별자로, 중복된 이름이 없고 관련 충돌이 없는지 확인하기 위해 지정할 수 있습니다.
- $session_id는 session_id를 사용하여 전송하는 것일 수도 있습니다. 사용자 정의됩니다.
- $savetype 저장 유형(세션 및 쿠키 방법 포함)
- ... 다른 매개변수는 쿠키
프로그램 자체에서 세션을 사용하는 경우에는 이 PHP를 구입하는 것이 좋습니다. 자동차 클래스는 쿠키 모드로 구현됩니다.
//제품 추가
- // 클래스 참조
- require_once './cart.class.php';
- // 클래스 인스턴스 생성
- $ cart = new cart();
// 제품에 이미 데이터가 수정되었습니다
- if ($cart->data[$id]) {
- $cart- > ;data[$id]['count'] = $count;
- $cart->data[$id]['money'] = $cart->data[$id]['price'] * $count;
- //제품 추가
- } else {
- $cart->data[$id]['name'] = $name;
- $cart->data[$ id ]['price'] = $price;
- $cart->data[$id]['count'] = $count;
- $cart->data[$id]['money' ] = $price * $count;
- }
- // 장바구니 데이터 저장
- $cart->save();
제품 수량 수정
- // 참조 클래스
- require_once './cart.class.php';
- // 클래스 인스턴스 생성
- $cart = new cart();
if ($cart->data[$id]) {
- $cart->data[$id]['count'] = $count;
- $ 장바구니->데이터[$id]['money'] = $cart->데이터[$id]['price'] * $count;
// 쇼핑카 데이터 저장
- $cart->save();
- }
상품 삭제
- // 참조 클래스
- require_once'./cart .class .php';
- // 클래스 인스턴스 생성
- $cart = new cart();
// 제품 삭제
- unset($cart-> ;data [$id]);
// 장바구니 데이터 저장
- $cart->save();
쇼핑카 목록
- // 참조 클래스
- require_once './cart.class.php';
- // 클래스 인스턴스 생성
- $cart = new cart();
- < ;p>foreach ($cart->data AS $k => $v) {
- echo '제품 ID: '.$k;
- echo '제품 이름: '.$v[' name' ];
- echo '제품 단가: '.$v['price'];
- echo '제품 수량: '.$v['count'];
- echo '총 가격 of product: '.$ v['money'];
- }
특정 분야의 총 누적---예: 모든 상품의 총 가격
- // 참조 클래스
- require_once './cart .class.php';
- //클래스 인스턴스 생성
- $cart = new cart();
/ / 머니 필드 적립
- $cart-> sum('money')
장바구니 지우기
- // 참조 클래스
- require_once'./cart.class .php';
- // 클래스 인스턴스 생성
- $cart = new cart();
// 데이터 지우기
- unset($cart->data );
- < p>//장바구니 데이터 저장
- $cart->save();
- */
/ /장바구니 클래스
- //bbs.it-home.org
- 클래스 카트 {
//장바구니 식별자
- var $cartname = '';
- // 저장 유형
- var $ savetype = '';
- // 장바구니의 제품 데이터
- var $data = array();
- // 쿠키 데이터
- var $ cookietime = 0;
- var $cookiepath = ' /';
- var $cookiedomain = '';
// 생성자(장바구니 ID, $session_id, 저장 유형 (세션 또는 쿠키), 기본값은 1일, $cookiepath, $cookiedomain)
- 함수 장바구니($cartname = 'myCart', $session_id = '', $savetype = 'session', $cookietime = 86400, $cookiepath = '/', $cookiedomain = '') {
// 세션 저장소 사용
- if ($savetype == 'session') {
if (!$session_id && $_COOKIE[$cartname.'_session_id']) {
- session_id($_COOKIE[$cartname.'_session_id']);
- } elseif($session_id)
- session_id($session_id); p>
session_start();
if (!$session_id && !$_COOKIE[$cartname.' _session_id'])
- setcookie($cartname .'_session_id', session_id(), $cookietime time(), $cookiepath, $cookiedomain);
- }
$ this->cartname = $cartname;
- $this->savetype = $savetype;
- $this->cookietime = $cookietime;
- $this->cookiepath = $cookiepath;
- $this->cookiedomain = $cookiedomain;
- $this->readdata();
- }
// 데이터 읽기
- function readdata() {
- if ($this-> ;savetype == 'session') {
- if ($_SESSION[$this->cartname] && is_array($_SESSION[$this->cartname]))
- $this->data = $ _SESSION[$this->cartname];
- else
- $this->data = array();
- } elseif ($this->savetype == '쿠키') {
- if ($_COOKIE[$this->cartname])
- $this->data = unserialize($_COOKIE[$this->cartname]);
- else
- $this->data = array();
- }
- }
// 장바구니 데이터 저장
- function save() {
- if ($this->savetype == 'session') {
- $_SESSION[$this->cartname] = $this->data;
- }elseif ($this->savetype == 'cookie') {
- if ($this->data)
- setcookie($this->cartname, serialize($this->data), $ this->cookietime time(), $this->cookiepath, $this->cookiedomain);
- }
- }
// 返回商品某字段累加
- function sum($field) {
$sum = 0;
- if ($this->data)
- foreach ($this-> 데이터 AS $v)
- if ($v[$field])
- $sum = $v[$field] 0;
return $sum;
- }
- }
- ?>
-
复代码
|