热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

详细介绍PHPsession实现购物车的实例教程

详细介绍PHPsession实现购物车的实例教程:这篇文章主要为大家详细介绍了PHPsession实现购物车功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下在wamp环境下,
这篇文章主要为大家详细介绍了PHP session实现购物车功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

在wamp环境下,用PHP的session会话控制完成购物车的效果,数据存放在数组里练习,没有连接数据库,效果不错,简单易懂,以下是各部分的代码

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


我的购物车

    $value):?>
  • " 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实现购物车的实例教程的详细内容,更多请关注其它相关文章!


推荐阅读
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 1.Listener是Servlet的监听器,它可以监听客户端的请求、服务端的操作等。通过监听器,可以自动激发一些操作,比如监听在线的用户的数量。当增加一个HttpSession时 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 本文介绍了C#中数据集DataSet对象的使用及相关方法详解,包括DataSet对象的概述、与数据关系对象的互联、Rows集合和Columns集合的组成,以及DataSet对象常用的方法之一——Merge方法的使用。通过本文的阅读,读者可以了解到DataSet对象在C#中的重要性和使用方法。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 如何在php文件中添加图片?
    本文详细解答了如何在php文件中添加图片的问题,包括插入图片的代码、使用PHPword在载入模板中插入图片的方法,以及使用gd库生成不同类型的图像文件的示例。同时还介绍了如何生成一个正方形文件的步骤。希望对大家有所帮助。 ... [详细]
  • MySQL数据库锁机制及其应用(数据库锁的概念)
    本文介绍了MySQL数据库锁机制及其应用。数据库锁是计算机协调多个进程或线程并发访问某一资源的机制,在数据库中,数据是一种供许多用户共享的资源,如何保证数据并发访问的一致性和有效性是数据库必须解决的问题。MySQL的锁机制相对简单,不同的存储引擎支持不同的锁机制,主要包括表级锁、行级锁和页面锁。本文详细介绍了MySQL表级锁的锁模式和特点,以及行级锁和页面锁的特点和应用场景。同时还讨论了锁冲突对数据库并发访问性能的影响。 ... [详细]
  • 本文整理了常用的CSS属性及用法,包括背景属性、边框属性、尺寸属性、可伸缩框属性、字体属性和文本属性等,方便开发者查阅和使用。 ... [详细]
  • 第8章 使用外部和内部链接
    8.1使用web地址LearnAboutafricanelephants. ... [详细]
  • 本博文基于《Amalgamationofproteinsequence,structureandtextualinformationforimprovingprote ... [详细]
  • struts2重点——ValueStack和OGNL
    一、值栈(ValueStack)1.实现类:OGNLValueStack2.对象栈:CompoundRoot( ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了css回到顶部按钮相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了10分钟了解Android的事件分发相关的知识,希望对你有一定的参考价值。什么是事件分发?大家 ... [详细]
  • Material Design Lite ,简洁惊艳的前端工具箱。
    2019独角兽企业重金招聘Python工程师标准MaterialDesignLite简介本文主要介绍MaterialDesign设计语言的HTMLCSSJS部分实现。对应每一 ... [详细]
author-avatar
竹茹士弘宜来
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有