Maison  >  Article  >  développement back-end  >  Implémentation simple en PHP du cas de la fonction d'ajout au panier

Implémentation simple en PHP du cas de la fonction d'ajout au panier

小云云
小云云original
2018-05-14 14:48:2423375parcourir

Avec l'arrivée de Double Eleven, nos paniers sont soulagés. Cet article est d'une grande utilité pour les développeurs PHP, c'est-à-dire comment utiliser PHP pour implémenter une simple fonction d'ajout au panier. Avant d'écrire le panier, nous devons d'abord y réfléchir. Nous devons d'abord appeler une table de la base de données. Ici, nous utilisons la table des fruits, suivie de la table de connexion pour ajuster le nom d'utilisateur et. mot de passe. , une fois que tout est prêt, il y a trois situations dans lesquelles vous devriez envisager de le mettre dans le panier :

La première situation : il n'y a rien dans le panier

La deuxième situation : shopping Il y a déjà ce produit dans le panier. Lors de l'ajout à nouveau, la quantité doit être considérée comme +1

La troisième situation : il y a un produit dans le panier, mais ce produit n'existe pas

L'image ci-dessous est la table de base de données utilisée :

Implémentation simple en PHP du cas de la fonction dajout au panier

Implémentation simple en PHP du cas de la fonction dajout au panier

Voici le code de la page de connexion :

<body>
<form action="chuli.php" method="post">
 <p style="margin-left: 500px; margin-top: 200px;
 height: 250px; width: 250px; border: 1px dashed black">
 <p style="margin-left: 100px; "><h3>登录</h3></p>
 <p style="margin-top: 20px">用户名:<input type="text" name="uid"/></p><br/>
 <p>密 码:<input type="password" name="pwd"/></p><br/>
 <p style="margin-left: 180px"><input type="submit" value="登录"/></p>
 </p>
</form>
</body>

Connexion Une fois la page écrite, vous devez entrer dans la page de traitement et récupérer le nom d'utilisateur et le mot de passe de la base de données :

<?php
session_start(); //开启session 必须要写到第一行
header("Content-type:text/html;charset=utf-8");
$uid=$_POST["uid"]; //从登录页面获取到用户名和密码
$pwd=$_POST["pwd"];
include("DADB.class.php");
$db=new DADB();
$sql="select password from login where username=&#39;{$uid}&#39;";
$arr=$db->Query($sql);
if($arr[0][0]==$pwd && !empty($pwd)) //判断所填写的密码和取到的密码是一样的,而且密码不能为空
{
 $_SESSION["uid"]=$uid;
 header("location:main.php");
}
else
{
 echo"登录失败";
}

La page de connexion est comme indiqué sur la figure :

Implémentation simple en PHP du cas de la fonction dajout au panier

Ensuite, nous devons entrer dans la page principale. Nous récupérerons toutes les informations sur les fruits de la base de données, puis nous implémenterons la fonction d'ajout au panier

<h2>大苹果购物网</h2>
<?php
session_start();
include("DADB.class.php");
$db=new DADB();
?>
<table border="1" width="100%" cellpadding="0" cellspacing="0">
 <tr>
 <td>代号</td>
 <td>水果名称</td>
 <td>水果价格</td>
 <td>原产地</td>
 <td>货架</td>
 <td>库存量</td>
 <td></td>
 </tr>
 <?php
 $uid=$_SESSION["uid"];
 $sql="select * from fruit";
 $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>{$v[5]}</td>
 <td><a href=&#39;add.php?ids={$v[0]}&#39;>购买</a></td> //这里的购买相当于添加购物车的功能 
 </tr>";
 }
 ?>
<?php
 //这里显示的是 购物车有多少产品,和产品的总价格
 $ann=array();
 if(!empty($_SESSION["gwc"]))
 {
 $ann=$_SESSION["gwc"];
 }
 $zhonglei = count($ann); 
 $sum=0;
 foreach($ann as $k)
 {
 $sql1="select price from fruit where ids=&#39;{$v[0]}&#39;";
 $danjia=$db->Query($sql1);
 foreach($danjia as $n)
 {
  $sum=$sum + $n[0]*$k[1];
 }
 }
 echo"购物车有<mark>{$zhonglei}</mark>种商品,总价格为<mark>{$sum}</mark>元";
 ?>
</table>
<p>
<a href="gouwuche.php" rel="external nofollow" rel="external nofollow" >查看购物车</a>
<a href="main.php" rel="external nofollow" rel="external nofollow" >浏览商品</a>
<a href="zhanghu.php" rel="external nofollow" rel="external nofollow" >查看账户</a> </p>
</body>
La page principale est comme indiqué sur la figure :

Implémentation simple en PHP du cas de la fonction dajout au panier

Le plus important est d'ajouter la page du panier

<?php
session_start();
$ids = $_GET["ids"];
if(empty($_SESSION["gwc"]))
{
 //1.购物车是空的,第一次点击添加购物车
 $arr = array(
 array($ids,1)
 );
 $_SESSION["gwc"]=$arr;
}
else
{
 //不是第一次点击
 //判断购物车中是否存在该商品
 $arr = $_SESSION["gwc"]; //先存一下
 $chuxian = false;
 foreach($arr as $v)
 {
 if($v[0]==$ids)
 {
  $chuxian = true;
 }
 }
 if($chuxian)
 {
 //3.如果购物车中有该商品
 for($i=0;$i<count($arr);$i++)
 {
  if($arr[$i][0]==$ids)
  {
  $arr[$i][1]+=1;
  }
 }
 $_SESSION["gwc"] = $arr;
 }
 else
 {
 //2.如果购物车中没有该商品
 $asg = array($ids,1);
 $arr[] = $asg;
 $_SESSION["gwc"] = $arr;
 }
}
header("location:gouwuche.php");
De cette façon, la page du panier peut être affichée. Le code de la page du panier est le suivant :

<h2>购物车中有以下商品:</h2>
<table cellpadding="0" cellspacing="0" border="1" width="100%">
 <tr>
 <td>商品名称</td>
 <td>商品单价</td>
 <td>购买数量</td>
 <td></td>
 </tr>
 <?php
 session_start();
 //$uid=$_SESSION["uid"];
 $arr=array();
 if(!empty($_SESSION["gwc"]))
 {
 $arr=$_SESSION["gwc"];
 }
 include("DADB.class.php");
 $db=new DADB();
 foreach($arr as $v)
 {
 global $db;
 $sql="select * from fruit where ids=&#39;{$v[0]}&#39;";
 $att=$db -> Query($sql,1);
 foreach($att as $n)
 {
  echo"<tr>
 <td>{$n[1]}</td>
 <td>{$n[2]}</td>
 <td>{$v[1]}</td>
 <td><a href=&#39;shanchu.php?ids={$v[0]}&#39;>删除</a></td>
 </tr>";}
 }
 ?>
</table>
<p>
<a href="gouwuche.php" rel="external nofollow" rel="external nofollow" >查看购物车</a> 
<a href="main.php" rel="external nofollow" rel="external nofollow" >浏览商品</a> 
<a href="zhanghu.php" rel="external nofollow" rel="external nofollow" >查看账户</a> </p> 14 15
 </body>
Entrez la page du panier comme ceci et elle s'affichera comme indiqué dans l'image :

Implémentation simple en PHP du cas de la fonction dajout au panier

Ce qui précède n'est qu'un simple cas PHP d'ajout au panier. Nous l'ajouterons également au panier plus tard. Il est nécessaire de l'améliorer. fonctions, telles que la réduction du nombre de produits dans la base de données et la suppression de produits dans le panier après l'avoir ajouté au panier. J'espère que le contenu de cette section pourra aider tout le monde et donner à chacun une idée plus claire du développement du panier d'achat.

Recommandations associées :

Un résumé des exemples de code d'implémentation de panier d'achat php

Code d'implémentation de panier d'achat php

Tutoriel code du panier php_PHP

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn