>백엔드 개발 >PHP 튜토리얼 >장바구니에 타오바오를 추가하는 방법 PHP 장바구니 예시 (Shen Jing)

장바구니에 타오바오를 추가하는 방법 PHP 장바구니 예시 (Shen Jing)

WBOY
WBOY원래의
2016-07-29 08:39:482063검색

if(! $session && ! $scid) {
/*
session은 각 장바구니를 식별하는 데 사용되며, 이는 각 장바구니의 ID 번호와 동일합니다.
scid는 쇼핑을 식별하는 데에만 사용됩니다. 각 장바구니의 이름으로 간주될 수 있는 장바구니 ID 번호
장바구니의 ID와 세션 값이 모두 존재하지 않는 경우 새로운 장바구니가 생성됩니다.
*/
$session = md5( uniqid(rand()));
/*
고유 장바구니 세션 번호 생성
rand()는 먼저 임의의 숫자를 생성하고 uniqid()는 임의의 숫자를 기반으로 고유한 숫자를 생성합니다. 숫자 문자열, 그리고 마지막으로 문자열
*/
SetCookie(scid, $session, time() 14400)
/*
장바구니 쿠키 설정
변수 이름: scid ( 여기에 $ 기호가 없는지 궁금합니다. =》수정: scid에 ""를 추가해야 합니다.)
변수 값: $session
유효 시간: 현재 시간 14400초(4시간 이내)
자세한 내용은 setcookie 함수 사용법은 PHP 매뉴얼을 참고하세요~
*/
}
class Cart { //장바구니 클래스 시작
function check_item( $table, $session, $product ) {
/*
항목 확인(테이블 이름, 세션, 항목)
*/
$query = SELECT * FROM $table WHERE session=' $session' AND product=' $product'
/*
'장바구니'에 '상품'이 있는지 '테이블'을 보면 알 수 있습니다.
즉, 해당 상품이 장바구니에 담겼는지
*/
$result = mysql_query( $query);
if(! $result) {
return 0;
}
/*
쿼리 실패
*/
$ numRows = mysql_num_rows( $result);
if( $numRows == 0) {
return 0;
/*
찾지 못하면 0을 반환합니다.
*/
} else {
$row = mysql_fetch_object( $result);
return $row->수량;
/*
발견된 경우 해당 항목의 수량을 반환합니다.
설명이 필요합니다. 여기서 mysql_fetch_object 함수(아래에서 사용됨):
[mysql_fetch_object()는 mysql_fetch_array()와 유사하지만 한 가지 차이점이 있습니다. 배열 대신 객체를 반환한다는 것입니다.】
위 문장은 PHP 매뉴얼에서 따온 것으로, 매우 명확합니다~
간단히 말하면, 레코드의 특정 필드를 얻으려면 다음과 같이 사용하는 대신 "->"를 사용해야 합니다. 배열. 첨자
*/
}
}
function add_item( $table, $session, $product, $Quantity) {
/*
새 항목 추가(테이블 이름) , 세션 , 품목, 수량)
*/
$qty = $this->check_item( $table, $session, $product)
/*
위 함수를 호출하여 확인합니다. 클래스 먼저 항목을 차에 넣었습니까?
*/
if( $qty == 0) {
$query = INSERT INTO $table (세션, 제품, 수량) VALUES ; $query . = (' $session', ' $product', ' $Quantity') ;
mysql_query( $query)
/*차에 없으면 항목을 추가하세요* /
} else {
$Quantity = $qty; //그렇다면 원래대로 수량을 늘립니다.
$query = UPDATE $table SET amount=' $quantity' WHERE session=' $session ' AND ;
$query .= product=' $product' ;
mysql_query( $query)
/*
데이터베이스 수정
*/
}
}
function delete_item ( $table, $session, $product) {
/*
항목 삭제(테이블 이름, 세션, 항목)
*/
$query = DELETE FROM $table WHERE session=' $session ' AND product=' $product' ;
mysql_query( $query)
/*
장바구니에서 이 유형의 항목 삭제
*/
}
함수 수정_수량( $ table, $session, $product, $Quantity) {
/*
항목 수량 수정(테이블 이름, 세션, 항목, 수량)
*/
$query = UPDATE $table SET 수량= ' $query' WHERE 세션=' $session' ;
$query .= AND product=' $product'
mysql_query( $query)/*
항목 수량을 매개변수의 값으로 수정
*/
}
functionclear_cart( $table, $session) {
/*
장바구니 비우기(할말 없음)
*/
$ 쿼리 = DELETE FROM $table WHERE 세션=' $session' ;
mysql_query( $query)
}
function cart_total( $table, $session) {
/*
车中총 품목 가격
*/
$query = SELECT * FROM $table WHERE session=' $session' ;
$result = mysql_query( $query); >/*
차를 먼저 넣으세요. Fetch all items in
*/
if(mysql_num_rows( $result) > 0) {
while( $row = mysql_fetch_object( $result)) {
/*
상품 개수 >0이면 가격을 하나씩 판단하여 계산합니다.
*/
$query = SELECT Price FROM Inventory WHERE product=' $row->product ' ;
$invResult = mysql_query( $query);
/*
인벤토리 테이블에서 항목 가격 찾기
*/
$row_price = mysql_fetch_object( $invResult)
$total = ( $row_price->price * $row-> 수량);
/*
총 가격 = 품목 가격 * 품목 수량
이해하세요)
*/
}
}
return $total; //전체 가격을 반환합니다
}
function display_contents( $table, $session) {
/*
자동차에 있는 모든 품목에 대한 자세한 정보 얻기
*/
$count = 0
/*
품목 수량 개수
이 변수는 차량의 수량을 계산하는 데만 사용되는 것이 아닙니다. 항목 수이지만 더 중요한 것은 반환 값 배열로 사용된다는 것입니다. 첨자는 각 항목을 구별하는 데 사용됩니다!
*/
$query = SELECT * FROM $table WHERE session=' $session' ORDER BY id ;
$result = mysql_query( $query);
/*
장바구니 우선
*/
의 모든 항목 while( $row = mysql_fetch_object( $result)) {
/*
각 항목에 대한 자세한 정보를 별도로 가져옵니다.
*/
$query = SELECT * FROM Inventory product=' $row->product' ;
$result_inv = mysql_query( $query);
/*
인벤토리 테이블에서 이 항목에 대한 정보 찾기
* /
$row_inventory = mysql_fetch_object( $result_inv)
$contents[product][ $count] = $row_inventory->product
$contents[price][ $count] = $row_inventory-> ;가격;
$contents[수량][ $count] = $row->수량
$contents[total][ $count] = ( $row_inventory->가격 * $row ->수량; );
$contents[description][ $count] = $row_inventory->description;
/*
항목에 대한 모든 세부 정보를 $contents 배열에 넣습니다.
$contents는 2차원 배열
첫 번째 첨자 세트는 각 항목에 대한 서로 다른 정보(예: 항목 이름, 가격, 수량 등)를 구분합니다.
두 번째 첨자 세트는 서로 다른 항목을 구분합니다. 앞서 정의한 $count 변수)
*/
$count ; //항목 수에 1을 더한 값(즉, 다음 항목)
}
$total = $this->cart_total( $table , $session);
$contents[final] = $total;
/*
동시에 위의 cart_total 함수를 호출하여 총 가격을 계산하고
$contents에 넣습니다. array
*/
return $contents;
/*
배열 반환
*/
}
function num_items( $table, $session) {
/ *
항목 유형의 총 개수를 반환합니다(즉, 두 개의 동일한 항목을 하나로 계산하는 것은 말도 안 되는 것 같습니다 - -!)
*/
$query = SELECT * FROM $table WHERE session=' $ session' ;$result = mysql_query( $query);
$num_rows = mysql_num_rows( $result);
return $num_rows; 그리고 연산의 효과를 얻습니다. 데이터베이스 행 수, 즉 총 항목 수(말할 것도 없음)
*/
}
function 퀀트_items( $table, $session) {
/*
모든 항목의 총 개수를 반환합니다. (즉, 2개의 동일한 항목도 2개의 항목으로 계산됩니다. -#)
*/
$Quant = 0;//총 항목 수량
$query = SELECT * FROM $table WHERE session=' $session ' ;
$result = mysql_query( $query)
while( $row = mysql_fetch_object( $result)) {
/ *
각 항목을 하나씩 가져옵니다
*/
$퀀트 = $row->수량; //전체 수량에 해당 항목의 수량을 더합니다.
}
return $ 퀀트; //총 수량을 반환합니다
}
}
위 내용은 장바구니에 타오바오를 추가하는 방법을 포함한 PHP 장바구니 예제(Shen Jing)를 소개한 내용입니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.