php专区

 首页 > php专区 > 正则表达式 > php中利用cookie实现购物车实例 - php会话

php中利用cookie实现购物车实例 - php会话

分享到:
【字体:
导读:
          购物车实现方法最常用的几种方法有,cookie,session与把记录保存到数据库,下面我来介绍最简单的方法就利用cookie作为购物车的商品记录存储库...

php中利用cookie实现购物车实例

购物车实现方法最常用的几种方法有,cookie,session与把记录保存到数据库,下面我来介绍最简单的方法就利用cookie作为购物车的商品记录存储库。

PHP购物车,在互联网中有好多网店,他们是怎样实现购物车?大多的网站都用cookie来实现,偶也自己写了一个简单的实例让大家参考一下.

用cookie简单的实现购物车,数据库代码如下:

  1. – phpMyAdmin SQL Dump 
  2. – version 2.11.9.2 
  3. – 
  4. – 主机: 127.0.0.1:3306 
  5. – 生成日期: 2009 年 12 月 06 日 02:05 
  6. – 服务器版本: 5.1.28 
  7. – PHP 版本: 5.2.6 
  8. SET SQL_MODE=”NO_AUTO_VALUE_ON_ZERO”; 
  9. – 
  10. – 数据库: `shopper` 
  11. – 
  12. – ——————————————————– 
  13. – 
  14. – 表的结构 `shop` 
  15. – 
  16. CREATE TABLE IF NOT EXISTS `shop` ( 
  17.   `id` int(11) NOT NULL AUTO_INCREMENT, 
  18.   `price` int(11) NOT NULL, 
  19.   `title` varchar(110) NOT NULL, 
  20.   PRIMARY KEY (`id`) 
  21. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ; 
  22. – 
  23. – 导出表中的数据 `shop` 
  24. – 
  25. INSERT INTO `shop` (`id`, `price`, `title`) VALUES 
  26. (1, 100, ‘玉米’), 
  27. (2, 200, ‘大豆’), 
  28. (3, 500, ‘西瓜’), 
  29. (4, 900, ‘冬瓜’), 
  30. (5, 800, ‘大米’); 

PHP代码文件:

  1. /* 
  2. 作者:简单小屋 
  3. QQ群1:32311900(满) 
  4. QQ群2:50900416 
  5. QQ2:39407******(满)简单小屋 
  6. QQ2:8726****  海角 
  7. */ 
  8. $conn=mysql_connect(“localhost”,”root”,”"); 
  9. mysql_select_db(“shopper”,$conn); 
  10. mysql_query(“SET NAMES utf8″); 
  11. $sql=”SELECT * FROM `shop`  WHERE 1 “; 
  12. $sql2=mysql_query($sql); 
  13. if($_POST[ok]){ 
  14.   $_POST[number]=(int)$_POST[number]; 
  15.   if($_POST[number]>0){ 
  16.   $idid=$_POST[id]; 
  17.   setcookie(“cookie_arr[$idid]“,$_POST[title].”|”.$_POST[number].”|”.$_POST[price].”|”.$_POST[number]*$_POST[price],time()+36000); 
  18.   header(“location:shop.php”);  
  19.  }else
  20.  echo “输入的数量不正确.
    ”; 
  21.  } 
  22. if(isset($_COOKIE['cookie_arr'])){   
  23.      foreach($_COOKIE['cookie_arr']   as   $name   =>   $value)   { 
  24.                    $value2=explode(“|”,$value);   
  25.                   echo   “ID({$name}) — $value2[0] — 数量:$value2[1]   –  单价:$value2[2]  –  总价格:$value2[3]  n”;   
  26.         }  
  27. ?> 
  28. //W3C//DTD XHTML 1.0 Transitional//EN” “ 
  29.  
  30. 无标题文档 
  31.  
  32.  
  33. while($row=mysql_fetch_array($sql2)){ 
  34. ?> 
  35.  
  36.   echo $row[id]; ?>” /> 
  37.   echo $row[price]; ?>” /> 
  38.   echo $row[title]; ?>” /> 
  39.   id:echo $row[id]; ?> 
  40.   商品名:echo $row[title]; ?> 
  41.   价格:echo $row[price]; ?> 
  42.   数量: 
  43.    
  44.    
  45.  
  46.  
  47. ?> 
  48.  
  49.  

缺点分析:cookie作为购物车很容易丢失了,如果用户清除浏览器缓存就有可能丢失cookie值哦,所以一般正常情况都是利用cookie+数据库来实例.

分享到:
用PHP控制您的浏览器cache - php会话
用PHP控制您的浏览器cache Output Control 函数可以让你自由控制脚本中数据的输出,它非常地有用,特别是对于:当你想在数据已经输出后,再输出文件头的情况,输出控制函数不对使用 header() 或 setcookie(),发送的文件头信息产生影响,只对那些类似于 echo() 和 PHP 代码的数据块有作用。 我们...
Mysql存储PHP Session - php会话
Mysql存储PHP Session 首先要进行的配置如下: 1.php.ini中将session.save_handler = files 中的files改为User,其他默认即可,重启Apache 2.本实例创建的数据库名叫php, username: root password:root 本实例设计的数据库的表结构如下所示,代码如下: create table mysession(  se...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……