ホームページ  >  記事  >  バックエンド開発  >  PHP ショッピング カート クラス_PHP チュートリアル

PHP ショッピング カート クラス_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:23:07954ブラウズ

PHPショッピングカートカテゴリ

PHPショッピングカートカテゴリ:

要件には、たとえば食品の種類と数量だけが記録されるため、製品の数量は記録されません。それは自分自身です

//setcookie("カート","s:26,45,4,4523423|d:17,7,27,26|e:12,13,123,43|f:34");

//cartAdd('e','167');

//getProInfo('z');

//delProInfo('f','26');

/**

*************

* マイプランのローカル情報変更のためのCOOKIEの記録、修正、削除のクラス

*リクアン

*/

クラスカート

{

/*

COOKIESショッピングカートを実装します

@type製品タイプ

@id商品番号

COOKIESの結果はtype1:3,45,23|type2:34,234,34|type3:344,124です

*/

関数cartAdd(type,id)

{

//初めて使用する場合は、COOKIESをリセットします

if(!isset(_COOKIE["カート"]))

{

Setcookie("カート",type.":".id);

}

その他

{

//初めてでない場合は、最初に取り出してください

cartStr=_COOKIE["カート"];

//結果を分離する

cartarray=split("|",cartStr);

// 型が存在するかどうかを判断するために使用されます。最初は存在せず、ゼロです

istype=0;

//品番一覧

id_list;

//製品のリサイクル

for (i=0;i

)

{

//製品名と製品番号のリストを取得します

list(carttype,product)=split(":",cartarray[i]);

//既存の商品が保存したい商品と似ている場合は、isType を 1 に変更し、商品が既に存在することを示します

if (type==carttype)

{

istype=1;

//製品番号リストを取得します

id_list=製品;

//ループを中断します

休憩 ;

}

}

//商品が存在しない場合

if(istype==0)

{

//新しい製品と製品エディターを COOKIES に追加します

cartStr=cartStr."|".type.":".id;

}

その他

{

//商品リストを配列に分割する

id_list=split(",",id_list);

//運用ポート番号が存在するかどうかを識別します。最初は存在しません

isId=0;

//サイクル品番

for(i=0;i

{

//保存したい品番が既に存在する場合

if(id==id_list[i])

{

//ロゴはすでに存在します ループを終了します

isId=1;

休憩;

}

}

//ここには製品タイプと製品番号のみが表示されるため、同じものは数量を追加せず、直接無視されます

//該当する種類の品番が存在しない場合は、新しい番号を追加します

if(isId!=1)

{

cartStr=str_replace(type.":",type.":".id.",",cartStr);

//cartStr=str_replace('d:','d:2,',cartStr);

}

}

setcookie("cart",cartStr);

print_r(_COOKIE["カート"]);

//setcookie("カート","",time()-100);

}

戻る ;

}

//該当商品一覧に戻る

/*

@type製品タイプ

*/

関数getProInfo(type)

{

//ショッピングカートのクッキーを取得

cartStr=_COOKIE["カート"];

// COOKIESの文字を一致させて商品リストを取得します

preg_str=type.":((d+),)*(d+)";

//エコー「
」 ";

preg_match("/".preg_str."/",cartStr,proStr);

//echo proStr[0];

//exit();

list(protype,product)=split(":",proStr[0]);

商品を返品する;

//pro_list=split(",",product);

//商品一覧に戻る

//return pro_list;

// print_r(pro_list);

}

/*

*商品を削除します

*@type 製品タイプ名

*@id商品番号

*/

関数delProInfo(type,id)

{

//ショッピングカートのクッキーを取得

cartStr=_COOKIE["カート"];

// COOKIESの文字を一致させて商品リストを取得します

preg_str=type.":((d+),)*(d+)";

//エコー「
」 ";

preg_match("/".preg_str."/i",cartStr,proStr);

//削除したい型が見つかった場合のみ以下の操作を行ってください

if(proStr)

{

//削除型に削除対象のIDがあるか問い合わせる

isproId=strstr(proStr[0],id);

//「はい」の場合は、次の操作に進みます

if(isproId)

{

//製品文字列を更新しました

upproStr;

//最新製品のすべての COOKIES キャラクターを更新しました

newCartStr;

//削除対象の商品が複数あるか確認します

preg_match("/,/",proStr[0],isend);

//「はい」の場合、次の操作を実行します

if(送信する)

{

//削除する商品の後ろに商品があるかを確認します

preg_match("/".id.",/",proStr[0],isdot);

//ある場合は次のカンマを削除

if(isdot)

{

upproStr=str_replace(id.",","",proStr[0]);

}

//そうでない場合は、前のカンマを削除します

その他

{

upproStr=str_replace(",".id,"",proStr[0]);

}

//COOKIESに挿入する文字列を更新します

newCartStr=str_replace(proStr[0],upproStr,cartStr);

}

//複数ない場合は、このタイプの商品を直接削除します

その他

{

//このタイプの商品の背後に他の商品があるかどうかを判断します

preg_match("/".proStr[0]."|/",cartStr,issu);

//ある場合は次の区切り文字を削除

もしも(いす)

{

newCartStr=str_replace(proStr[0]."|","",cartStr);

}

//そうでない場合は、前の区切り文字を削除します

その他

{

newCartStr=str_replace("|".proStr[0],"",cartStr);

}

}

Setcookie("カート",newCartStr);

}

}

}

関数deletecart()

{

Setcookie("カート","",time()-100);

}

}

?>

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/845130.html技術記事 PHP ショッピング カート クラス PHP ショッピング カート クラス: この要件では、製品の種類と数量のみが記録されるため、食品など、その後に数量が記録されます。このように、製品の数量は記録されません。自分で使わなければなりません...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。