Cet article présente principalement en détail la fonction de suppression des produits du panier en PHP. Il a une certaine valeur de référence.
Dans l'article précédent, je viens d'écrire un simple ajout. à la fonction panier, la suppression des produits dans le panier, la réduction des stocks après la passation d'une commande et le solde du compte client ne sont pas parfaits. Cet article est une continuation de l'article précédent, qui parlait de la suppression du panier. Fonction panier, afin de réduire la saisie du code de suppression, nous devons changer la valeur des identifiants obtenus lorsque le lien
précédent supprime la page à la valeur d'index. de arr pour obtenir l'index de arr Changez la valeur k en
DeleteDe cette façon, après avoir entré la page de suppression, nous pouvons obtenir directement la valeur d'index sy. Cela rend la suppression de la page beaucoup plus simple à écrire
Ce qui suit est le code pour supprimer la page. shanchu.php
<?php session_start(); $sy = $_GET["sy"]; //根据索引找到该数据 $arr = $_SESSION["gwc"]; $arr[$sy]; //要删除的数据 //如果数量不为1,数量减1 if($arr[$sy][1]>1) { $arr[$sy][1] = $arr[$sy][1]-1; } else //如果数量为1,移除 { unset($arr[$sy]); } $_SESSION["gwc"] = $arr; //最后存一下购物车的内容 header("location:gouwuche.php");
Supprimez simplement la page comme celle-ci. Voici le code de la page de soumission, qui est relativement lourde. Lorsqu'il s'agit de soumettre la page, ce à quoi nous pensons, c'est l'inventaire et le solde. Tant que nous soumettons la commande, l'inventaire sera réduit, le solde relatif diminuera également. Si l'inventaire est insuffisant ou si le solde est insuffisant, l'acheteur devrait également l'être. rappelé.
Deux tableaux sont réalisés ici pour stocker les données
à la fin de gouwuche.php Ajouter une balise
<p><a href="tijiaodd.php" rel="external nofollow" ></a><p>
Ce qui suit est le code de tijiaodingdd.php
<?php session_start(); header("Content-type:text/html;charset=utf-8"); //防止出现乱码 $uid=$_SESSION["uid"]; //先查一下账户余额 include("DADB.class.php"); $db=new DADB(); $ysql="select account from login where username='{$uid}'"; $yarr=$db->Query($ysql); $yarr[0][0];//总额 //购物车的总价格,前面有写过 $arr=array(); if (!empty($_SESSION["gwc"])) { $arr=$_SESSION["gwc"]; } $sum=0; foreach($arr as $v) { $v[1];//购物车中产品的数量 $psql="select price from fruit WHERE ids='{$v[0]}'"; $parr=$db->Query($psql); foreach($parr as $k) { $k[0];//产品的单价 $sum+=$k[0]*$v[1]; } } //判断余额是否满足购买 if($yarr[0][0]>=$sum) {//余额满足,要判断库存 foreach($arr as $v) { $ksql="select number from fruit where ids='{$v[0]}'"; $karr=$db->Query($ksql); $karr[0][0];//这是库存 if($karr[0][0]<$v[1]) //表示库存不足,这时要给顾客提示库存不足 { echo"库存不足"; exit; } } //判断之后需要提交订单了 //账户扣除余额 $kcsql="update login set account=account-{$sum} where username='{$uid}'"; $db->Query($kcsql,0);//这里是修改语句,所以要加上0 //扣除库存 foreach($arr as $v) { $kcksql="update fruit set number=number-$v[1] where ids='{$v[0]}'"; $db->Query($kcksql,0); } //所有的工作都做完了,这时我们就该提交订单了 // 这里我在数据库中做了两张表,把提交的订单添加到表中就可以保存了 //添加订单 $ddh = date("YmdHis"); $time = date("Y-m-d H:i:s"); $sdd = "insert into orders values('{$ddh}','{$uid}','{$time}')"; $db->Query($sdd,0); //添加订单详情 foreach($arr as $v) { $sddxq = "insert into orderdetails values('','{$ddh}','{$v[0]}','{$v[1]}')"; $db->Query($sddxq,0); } } else { echo "余额不足"; exit; } ?>
Les produits dans le panier sont toujours les mêmes que ceux de l'article précédent. regardez à nouveau les tables de la base de données.
Remarques : Parce que le compte de Zhangsan a été utilisé dans de nombreux tests précédents, le prix du compte dans le tableau de connexion est passé à 33,6 yuans et le prix du produit que nous avons mis dans le panier était de 16,8 yuans, donc il n'y a pas de problème ici .
Un panier aussi simple et relativement simple est complètement complété.
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!