Maison > Article > développement back-end > Comment implémenter la fonction de panier d'achat php
Comment implémenter la fonction de panier PHP : connectez-vous d'abord au site Web pour parcourir les produits ; puis achetez les produits spécifiés, puis entrez dans la page du panier, où vous pouvez modifier la quantité du produit, supprimer le produit ; , vider le panier, continuer vos achats et ainsi de suite, enfin, vous pouvez générer une commande, soumettre une commande et d'autres opérations ;
Recommandé : "Tutoriel vidéo PHP"
Présentation d'un code de panier d'achat et d'idées implémentées en php , les fonctions sont entièrement réalisées et ont une certaine valeur de référence.
Ici, nous vous fournissons un simple code de panier php, de l'ajout de produits d'achat à la réalisation d'achats. Dans le développement d'un centre commercial, cette fonction est indispensable.
1. Les opérations sur les produits dans le panier sont généralement les suivantes :
Ajouter des produits, supprimer des produits, Et soumettre la commande ;
2. L'essence de la méthode est la suivante :
Stocker la session dans le tableau, ajouter, supprimer et modifier le tableau. , chaque groupe du tableau Les enregistrements sont toutes des informations sur un produit (numéro, prix, etc.) ;
3 L'idée derésoudre le panier est d'utiliser la session pour. enregistrez un tableau bidimensionnel .
Une dimension représente chaque produit, et deux dimensions incluent l'ID du produit, la quantité du produit, etc. Vous pouvez l'augmenter vous-même. Quoi qu'il en soit, il s'agit de deux dimensions. Vous pouvez ajouter autant d'attributs du produit que vous le souhaitez. tu aimes.
4. Le processus de fonctionnement du panier :
Tout d'abord, connectez-vous au site Web pour parcourir les produits, puis achetez les produits spécifiés et entrez dans les achats ; page du panier. La page peut modifier la quantité de marchandises, supprimer des marchandises, vider le panier, continuer les achats, etc., générer des commandes, soumettre des commandes et d'autres opérations.
Veuillez consulter les commentaires puissants pour plus de détails ;
Connectez-vous d'abord
<body> <h1>登入页面</h1> <form action="dengrucl.php" method="post"> <p>帐号:<input type="text" name="zhang"/></p> <p>密码:<input type="text" name="mi"/></p> <input type="submit" value="登入"/> </form> </body>复制代码
Traitement de connexion :
<?php session_start(); include ("db.class.php");$db = new db();$zhang = $_POST["zhang"];$mi = $_POST["mi"];$sql = "select mi from yonghu WHERE zhang = '{$zhang}'";$arr = $db->Query($sql);if(!empty($zhang)&&!empty($mi)&&$mi = $arr){ $_SESSION["zhang"] = $zhang; header("location:zym.php"); }else{ echo "登入失败"; } ?>复制代码;
C'est une simple connexion, rien à dire ;
Après s'être connecté, il ira directement sur la page principale :
<body> <h1>长腿璇购物商城</h1> <table border="1" cellpadding="0" cellspacing="0" width="100%" > <tr> <td>代号</td> <td>水果名称</td> <td>水果价格</td> <td>水果产地</td> <td>水果库存</td> <td>操作</td> </tr>复制代码rrree
Photos :
Quand je clique sur Ajouter au panier :
La quantité et le prix ci-dessus ont changé, indiquant qu'il a été ajouté au panier
Voyons comment c'est fait (commentaires puissants) :
<?php session_start();$_SESSION["zhang"] = "xiaoming";//不做登入的情况下,直接存sessiion include ("db.class.php"); $db = new db(); $sql = "select * from sgbiao"; $arr = $db->Query($sql); foreach ($arr as $v) { echo " <tr> <td>{$v[0]}</td> <td>{$v[1]}</td> <td>{$v[2]}</td> <td>{$v[3]}</td> <td>{$v[4]}</td> <td> <a href='zymcl.php?ids={$v[0]}'>加入购物车</a> </td> </tr>"; } ?> <?php //这里显示的是 购物车有多少产品,和产品的总价格 $ann=array(); if(!empty($_SESSION["gwc"])) { $ann=$_SESSION["gwc"]; } $zhonglei = count($ann); $aa=0; foreach($ann as $k) { $k[0];//水果代号 $k[1];//水果数量 $sql1="select jiage from sgbiao where ids='{$k[0]}'"; $danjia=$db->Query($sql1); foreach($danjia as $n) { $aa=$aa + $n[0]*$k[1]; } } echo"数量:{$zhonglei}<br/> 价格:<mark>{$aa}元"; ?> 复制代码 复制代码 </table> <a href="tijiao.php">查看账户</a> <a href="ckgwc.php">查看购物车</a> </body>复制代码
Ensuite, créez la page du panier :
<?php session_start(); //$ids = $_GET["ids"];if(empty($_SESSION["gwc"])) { //如果点击的购物车是空的(第一次添加) //如果购物车里是空的,造二维数组, $arr = array( array($ids,1) //一维数组,取ids,第一次点击增加一个 ); $_SESSION["gwc"]=$arr; //扔到session里面 }else //这里不是第一次点击 { //先判断购物车里是否已经有了该商品,用$ids $arr = $_SESSION["gwc"]; //把购物车的状态取出来 $chuxian = false; //定义一个变量;用来表示是否出现,默认是未出现 foreach ($arr as $v) { //便利他 //如果这里面有这件商品 if ($v[0] == $ids) //如果取过来的$v[0](商品的代号)等于$ids那么就证明购物车中已经有了这一件商品 { $chuxian = true; //如果出现,直接把chuxian改成true } } if($chuxian) { //购物车中有此商品 for($i=0;$i<count($arr);$i++) { if($arr[$i][0] == $ids) { //把点到的商品编号加1 $arr[$i][1] += 1; } } $_SESSION["gwc"] = $arr; } else { //这里就只剩下:购物车里有东西,但是并没有这件商品 $asg = array($ids,1); //设一个小数组 $arr[] = $asg; $_SESSION["gwc"]=$arr; } } header("location:zym.php") ?>复制代码
<body> <h1>查看购物车</h1> <table width="100%" border="1"cellspacing="0" cellpadding="0"> <tr> <td>商品名称</td> <td>商品单价</td> <td>商品数量</td> <td>操作</td> </tr>复制代码
Ci-dessus :
Vous pouvez voir que le nombre de grosses pommes est de 4. Si je clique sur Supprimer, la condition est qu'il y ait de grosses pommes et que le nombre soit supérieur à un. Cliquez sur Supprimer pour réduire le nombre de un :
Raisin blanc Le nombre est 1. Si je clique sur supprimer, la condition est que le nombre ne soit pas supérieur à un, afin qu'il puisse être supprimé du tableau
Venez jeter un oeil ; à la page de suppression :
<?php session_start(); if(!empty($_SESSION["gwc"])) { $arr = array(); $arr = $_SESSION["gwc"]; //造数组 } include ('db.class.php'); $db = new db(); foreach ($arr as $v) { global $db; $sql = "select * from sgbiao WHERE ids = '{$v[0]}'"; $att = $db->query($sql); foreach ($att as $a) { echo "<tr> <td>{$a[1]}</td> <td>{$a[2]}</td> <td>{$v[1]}</td> <td><a href='shanchu.php?ids={$a[0]}'>删除</a> </td> </tr> "; // 蔬果的名称 // 单价 // 取int数量 // 这个地方也可以加索引shanchu.php?sy={$v} } } ?> </table> <a href="tijiao.php">提交订单</a> </body>复制代码
Haute énergie ! !
Sur la page de passation de commande, il n'y a qu'une seule page de traitement. Si vous en avez besoin, vous pouvez remplir vous-même le lien :
<?php session_start();$ids = $_GET["ids"];$arr = $_SESSION["gwc"]; //var_dump($arr); //取索引2(数量) foreach ($arr as $key=>$v) { if($v[0]==$ids) { if($v[1]>1){ //要删除的数据 $arr[$key][1]-=1; } else{ //数量为1的情况下,移除该数组 unset($arr[$key]); } } }$_SESSION["gwc"] = $arr; //记得扔到session里面 header("location:ckgwc.php"); //删除完跳转回去复制代码
De cette façon, les fonctions générales du panier ont été réalisé ;
Voyons l'effet après avoir cliqué sur soumettre la commande :
1. >2. Ajouter une commande :
3. Ajouter le contenu de la commande :
4.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!