ホームページ  >  記事  >  バックエンド開発  >  php を使用して Web サイトのショッピング カートを作成する方法を理解していますか?

php を使用して Web サイトのショッピング カートを作成する方法を理解していますか?

WBOY
WBOYオリジナル
2016-06-13 11:57:36878ブラウズ

php を使用して Web サイトのショッピング カートを作成する方法を理解していますか?

オンライン ショッピングは今や流行しています。顧客は商品を選択し、ショッピング カートに入れ、戻って買い物を続けるか、チェックアウトに進みます。この機能を実装するにはどうすればよいですか?現在、capucivar は PHP を使用してこのショッピング カート機能を実装します。

まず、簡単なホームページを作成し、データベースからいくつかの製品をクエリし、ホームページに表示し、追加します。購入ボタン。具体的なコードは次のとおりです:

include ("conn.php");

$sql="select * fromProduce";//すべての製品をクエリします

$rs=mysql_query($sql,$conn);// SQL を実行しますステートメントを実行し、結果セットを取得します

while($row=mysql_fetch_array($rs))//結果セットを走査します

{

?>

商品価格:

php を使用して Web サイトのショッピング カートを作成する方法を理解していますか?

src="images/" width="123" height= "121" border= "0"/>

商品名:
&pname=

echo $row["pname"]?>">購入

}

?>

ところで、コン。 php 書き忘れていましたが、データベースへの接続に使用されます:

$conn=mysql_connect( "localhost ","root","");

mysql_select_db("shop",$conn);

mysql_query("set names gb2312");

?>

このようにして、インターフェースは次のように表示されます:

php を使用して Web サイトのショッピング カートを作成する方法を理解していますか?

購入ハイパーリンクをクリックして、buy.php に移動します。このページでは、購入したアイテムを 1 次元配列に格納する必要があります。 item を 1 次元配列に変換し、次にその次元配列を 2 次元配列に配置し、最後にその 2 次元配列をセッションに配置します。購入したアイテムを将来どのように変更しても、セッションから取り出して変更することができます。これにより管理が非常に便利になります。具体的なコードは次のとおりです:

session_start();//使用する前に必ずセッションを開いてください。

ob_start();//キャッシュをクリアするには、ob_start()

$pid=$_GET["id"] ;//購入したアイテム ID を取得します

$name=$_GET["pname"];//購入したアイテムの名前を取得します

$arr=$_SESSION[ "mycar"];// セッション内の変数を取得します

// まず変数が配列かどうかを判断しましょう。以前に何か購入したことがあります

if(is_array($arr))

{

// 配列の場合は、以前に何かを購入したことがあるという意味です

// 何かを購入した場合は、2 つの状況があります:

if(array_key_exists($pid,$arr))

{

/ /1. array_key_exists($pid,$arr) は、$arr にキー値 $pid を持つ 1 次元配列があるかどうかを判断します。存在する場合は、この製品が以前に購入されたことを意味します。数量に

$uu=$arr [$pid]; // 2次元配列から対応する1次元配列を取り出します。1次元配列にはid名numの3つの値が含まれます

$uu["num"]=$uu["num"]+1; /数量を変更して数量に1を加えます

$arr[$pid]=$uu; // 変更後、1 次元配列を 2 次元配列に戻します

}

else

{ //2. この製品を初めて購入する場合、取得された ID と名前の値は、 1 次元配列

$arr[$pid]=array("pid"=>) ;$pid,"name"=>$name,"num"=>1);

}

}

else

{

$arr[$pid]=array("pid"=>$pid,"name"=>$name,"num"=>1 );

}

$_SESSION["mycar"]=$arr;//購入後、この配列をセッションでは、このセッションを各ページで確認できます

ob_clean();//キャッシュをクリアします

header("location:car . php");//ショッピングカートインターフェース(car.php)へジャンプ

?>

以下はショッピングカートですコード:

session_start();//セッションを有効にする

$arr=$_SESSION["mycar"];// セッションから 2 次元配列を取得します

?>

//以下は配列内のデータ、つまり顧客が購入した商品を表示します

製品 ID

製品名

アイテム数

削除

foreach($arr as $a)//この 2 次元配列を走査します

{

?>

//アイテムID

// の名前item

> ;/ /アイテムの数量

//「delete.php」への削除ハイパーリンクをクリックし、アイテム ID を渡します

}

? >

">削除

< ; ahref="index.php">戻ってショッピングを続ける//ホームページに戻る

capucivar がいくつかのアイテムを購入した後、インターフェイスに次の効果が表示されました:

php を使用して Web サイトのショッピング カートを作成する方法を理解していますか?

商品を削除すると、先頭の取得 削除したい商品のIDを取得できます。IDを取得後、取得したIDに対応する1次元配列を2次元配列から取り出し、1次元配列をクリア(unset())します。 )、次に 2 次元配列をセッション () 内に戻します。以下の削除コードを記述します:

session_start();//セッションを開始します

ob_start();//開始する必要があるキャッシュ項目をクリアします

$pid=$_GET["id"];//get メソッドで渡された ID を取得します

$arr=$_SESSION["mycar"];//取り出しますセッションの 2 次元配列

foreach($arr as$key=>$proId)//2 次元配列内のキー値を走査します。これは製品 ID

{

if($key==$pid )//判定キー 渡されたプロダクトIDと等しい値

{

unset($arr[$key]);// 1 つをクリアします。次元配列

}

}

$_SESSION[ "mycar"]=$arr;// クリアされた 2 次元配列をセッションに置き換えます

ob_clean();// キャッシュをクリアします

header("location:car.php");//ショッピングカートにジャンプ

?>

コードを記述した後、capucivar 上の製品 ID 2 の購入済み製品が削除されます。結果は次のようになります。

php を使用して Web サイトのショッピング カートを作成する方法を理解していますか?

ショッピングカート機能は購入と削除のみを実現する比較的シンプルな機能です。実際、ショッピング カートは、考え方が明確であれば、1+1 を計算するのと同じくらい単純です。

ショッピング カートの機能は次のように実装されています。商品を購入して商品の ID と名前を取得し、これら 2 つの値と数量 (1) を入力します。 ) を 1 次元配列に変換する ここで、製品は 1 次元配列であるため、非常に多くの製品に 2 次元配列を使用するのは自然なことです。その前に、まず商品が以前に購入されたかどうかを確認し、購入されている場合は、1 次元配列を再作成し、最後に 1 次元配列を 2 次元配列に入れます。セッションに入る。削除する場合は、削除するプロダクトのIDを取得し、そのプロダクトが格納されている1次元配列を2次元配列から探し、1次元配列をクリアしてから、その2次元配列をセッションに投入します。このようにして、上記と同様の単純なショッピング カート機能が実装されます。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。