如何在PHP中使用session实现一个购物车功能-创新互联

如何在PHP中使用session实现一个购物车功能?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

10年积累的成都网站制作、网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有富锦免费网站建设让你可以放心的选择与我们合作。

common.php


1,'img'=>'img/1.jpg','title'=>'小米移动电源5000mAh','price'=>49),
    array('id'=>2,'img'=>'img/2.jpg','title'=>'20000mAh小米移动电源2','price'=>149),
    array('id'=>3,'img'=>'img/3.jpg','title'=>'小米圈铁耳机Pro','price'=>129),
    array('id'=>4,'img'=>'img/4.jpg','title'=>'小米家电动滑板车','price'=>1999),
    array('id'=>5,'img'=>'img/5.jpg','title'=>'小米笔记本','price'=>3499),
    array('id'=>6,'img'=>'img/6.jpg','title'=>'米家LED智能台灯','price'=>169),
    array('id'=>7,'img'=>'img/7.jpg','title'=>'小米体重秤','price'=>99),
    array('id'=>8,'img'=>'img/8.png','title'=>'小米电视3s 48英寸','price'=>2599)
  );

index.php






  
  商品展示
  
  section{
    width:1032px;
    height: 700px;
    margin: 40px auto;
  }
  .top{
    float: right;
    position: relative;
    width: 190px;
    height: 34px;
    border: 1px solid #ccc;
    margin-right: 32px;
    text-align: center;
    line-height: 34px;
    border-radius: 4px;
    transition: all .3s linear;
    -moz-transition: all .3s linear;
    -webkit-transition: all .3s linear;
  }
  .top a{
    color: #d00;
  }
  .top:hover{
    width: 210px;
    color: #fff;
    font-weight: bold;
    background-color: #d00;
    border-radius: 6px;
  }
  .top:hover a{
    color: #fff;
  }
  .top:hover span{
    background-color: #fff;
    color: #d00;
  }
  .top:hover .star{
    right:150px;
    top: 0;
    font-size: 14px;
    color: #ff0;
    transform: rotate(1080deg);
  }
  .top span{
    position: absolute;
    top:2px;
    right: 40px;
    width: 18px;
    height: 18px;
    font-weight: bold;
    border-radius: 9px;
    line-height: 18px;
    text-align: center;
    font-size: 12px;
    font-weight: border;
    color: #fff;
  }
  .star{
    color: #fff;
    font-size: 48px;
    font-style: normal;
    position: absolute;
    right:530px;
    top:186px;
    transform: rotate(60deg);
    transition: all .3s ease;
  }
  .on{
    background-color: #e00;
  }
  .list{
    margin: 20px 20px;
    padding: 36px 0;
    list-style: none;
  }  
  a{
    display: block;
    color: #757575;
    text-decoration: none;
  }
  .list li{
    float: left;
    height: 246px;
    width: 234px;
    padding: 10px 0 20px;
    margin-right:12px;
    margin-top: 20px;
    border: 1px solid #ccc;
    background: #fff;
    -webkit-transition: all .2s linear;
    transition: all .2s linear;
  }
  .list li:hover{
    box-shadow: 2px 4px 5px #aaa;
  }
  .figure{
    width: 150px;
    height: 150px;
    margin: 0 auto 18px;
  }
  .title{
    color: #222;
    font-size: 14px;
    font-weight: normal;
    text-align: center;
  }
  .price{
    margin: 0 10px 10px;
    text-align: center;
    color: #ff6700;
  }
  .cart{
    margin: 0 15px 5px;
    text-align: center;
  }
  .cart a{
    color: #a34;
    width: 190px;
    height: 24px;
    border-radius: 4px;
    margin: 0 8px 5px;
    text-align: center;
  }
  .cart a:hover{
    color: #eee;
    box-shadow: 0 2px 1px #333,0 2px 1px #666;
    background-color: #ccc;
    background-image: linear-gradient(#33a6b8,#0089a7)
  }
  .num{
    text-align: center;
    color: #ff6700;
  }
  


  
     我的购物车">   ★   
      $value):?>   
  •           " width="150" height="150" alt="小米移动电源5000mAh">      
  •                        

        " rel="external nofollow" >加入购物车

               
      

    action.php

     $value) {
        if($id == $value['id']){
        $arrData = $arrPro[$key];
        }
      }
    
      //用一个新的二维数组把商品信息存起来
      $arrDatax[0][$arrData['id']] = $arrData['id'];
      $arrDatax[1][$arrData['id']] = $arrData['img'];
      $arrDatax[2][$arrData['id']] = $arrData['title'];
      $arrDatax[3][$arrData['id']] = $arrData['price'];
      $arrDatax[4][$arrData['id']] = 1;
      //判断是否有SESSION存在,有则在数组后添加,没有则直接存
      if(empty($_SESSION['shopcar'])){
        $_SESSION['shopcar'] = $arrDatax;
        header('Location:index.php');
      }else{
        //第一次购物之后的购物
        //重新取出来,防止数据覆盖
        $arrDataz = $_SESSION['shopcar'];
        if(in_array($id,$arrDataz[0])){
          $arrDataz[4][$arrData['id']] += 1;
          $_SESSION['shopcar'] = $arrDataz;
          header('Location:index.php');
        }else{
          $arrDataz[0][$arrData['id']] = $arrData['id'];
          $arrDataz[1][$arrData['id']] = $arrData['img'];
          $arrDataz[2][$arrData['id']] = $arrData['title'];
          $arrDataz[3][$arrData['id']] = $arrData['price'];
          $arrDataz[4][$arrData['id']] = 1;
          $_SESSION['shopcar'] = $arrDataz;
          header('Location:index.php');
        }
    
      }
    }else{
      echo "购物车没有商品!";
    }

    spcar.php

     $value) {
        if($id == $value['id']){
        $arrData = $arrPro[$key];
        }
      }
    
      //用一个新的二维数组把商品信息存起来
      $arrDatax[0][$arrData['id']] = $arrData['id'];
      $arrDatax[1][$arrData['id']] = $arrData['img'];
      $arrDatax[2][$arrData['id']] = $arrData['title'];
      $arrDatax[3][$arrData['id']] = $arrData['price'];
      $arrDatax[4][$arrData['id']] = 1;
      //判断是否有SESSION存在,有则在数组后添加,没有则直接存
      if(empty($_SESSION['shopcar'])){
        $_SESSION['shopcar'] = $arrDatax;
        header('Location:index.php');
      }else{
        //第一次购物之后的购物
        //重新取出来,防止数据覆盖
        $arrDataz = $_SESSION['shopcar'];
        if(in_array($id,$arrDataz[0])){
          $arrDataz[4][$arrData['id']] += 1;
          $_SESSION['shopcar'] = $arrDataz;
          header('Location:index.php');
        }else{
          $arrDataz[0][$arrData['id']] = $arrData['id'];
          $arrDataz[1][$arrData['id']] = $arrData['img'];
          $arrDataz[2][$arrData['id']] = $arrData['title'];
          $arrDataz[3][$arrData['id']] = $arrData['price'];
          $arrDataz[4][$arrData['id']] = 1;
          $_SESSION['shopcar'] = $arrDataz;
          header('Location:index.php');
        }
    
      }
    }else{
      echo "购物车没有商品!";
    }

    delete.php

    看完上述内容,你们掌握如何在PHP中使用session实现一个购物车功能的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


    名称栏目:如何在PHP中使用session实现一个购物车功能-创新互联
    路径分享:http://myzitong.com/article/ecjgo.html

    其他资讯