当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP/MySQL 购物车

PHP
用PHP脚本在Linux系统上读取输入和对文
PHP中register_globals引发的问题
PHP基础:安全基础IIS 6的PHP最佳配置
Web开发基础知识分享:Php基础知识了解
实例解析:PHP程序开发中的中文编码问题
PHP5程序中新增加日期(date)函数的常量
新手学堂:PHP服务器变量设置的方法介绍
如何正确理解PHP程序错误信息的表示含义
PHP程序百行代码快速构建简易聊天室方法
如何使用PHP程序开发高效的WEB网络系统
加速PHP动态网站 关于MySQL索引分析优化
教你如何在SQL Server数据库中加密数据
用PHP程序直接调用文本文件内容实例
使用php的zlib压缩和解压缩swf文件
升级PHP5的理由:PHP4和PHP5性能对比
解决php存取mysql 4.1乱码问题
FC 5 php 不可以连接远程mysql数据库
一个特别好的学习PHP引用返回的例子
热门看点:PHP 6新版发布前新特性大展望
开源新版NetBeans让PHP开发变得更加轻松

PHP/MySQL 购物车


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 118 ::
收藏到网摘: n/a

       <?
  if(!$session && !$scid) {
  $session = md5(uniqid(rand()));
  SetCookie("scid", "$session", time() + 14400);
  } /* last number is expiration time in seconds, 14400 sec = 4 hrs */
  
  class Cart {
  function check_item($table, $session, $product) {
  $query = "SELECT * FROM $table WHERE session='$session' AND product='$product' ";
  $result = mysql_query($query);
  
  if(!$result) {
  return 0;
  }
  
  $numRows = mysql_num_rows($result);
  
  if($numRows == 0) {
  return 0;
  } else {
  $row = mysql_fetch_object($result);
  return $row->quantity;
  }
  }
  
  function add_item($table, $session, $product, $quantity) {
  $qty = $this->check_item($table, $session, $product);
  if($qty == 0) {
  $query = "INSERT INTO $table (session, product, quantity) VALUES ";
  $query .= "('$session', '$product', '$quantity') ";
  mysql_query($query);
  } else {
  $quantity += $qty;
  $query = "UPDATE $table SET quantity='$quantity' WHERE session='$session' AND ";
  $query .= "product='$product' ";
  mysql_query($query);
  }
  }
  
  function delete_item($table, $session, $product) {
  $query = "DELETE FROM $table WHERE session='$session' AND product='$product' ";
  mysql_query($query);
  }
  
  function modify_quantity($table, $session, $product, $quantity) {
  $query = "UPDATE $table SET quantity='$quantity' WHERE session='$session' ";
  $query .= "AND product='$product' ";
  mysql_query($query);
  }
  
  function clear_cart($table, $session) {
  $query = "DELETE FROM $table WHERE session='$session' ";
  mysql_query($query);
  }
  
  function cart_total($table, $session) {
  $query = "SELECT * FROM $table WHERE session='$session' ";
  $result = mysql_query($query);
  if(mysql_num_rows($result) > 0) {
  while($row = mysql_fetch_object($result)) {
  $query = "SELECT price FROM inventory WHERE product='$row->product' ";
  $invResult = mysql_query($query);
  $row_price = mysql_fetch_object($invResult);
  $total += ($row_price->price * $row->quantity);
  }
  }
  return $total;
  }
  
  function display_contents($table, $session) {
  $count = 0;
  $query = "SELECT * FROM $table WHERE session='$session' ORDER BY id ";
  $result = mysql_query($query);
  while($row = mysql_fetch_object($result)) {
  $query = "SELECT * FROM inventory WHERE product='$row->product' ";
  $result_inv = mysql_query($query);
  $row_inventory = mysql_fetch_object($result_inv);
  $contents["product"][$count] = $row_inventory->product;
  $contents["price"][$count] = $row_inventory->price;
  $contents["quantity"][$count] = $row->quantity;
  $contents["total"][$count] = ($row_inventory->price * $row->quantity);
  $contents["description"][$count] = $row_inventory->description;
  $count++;
  }
  $total = $this->cart_total($table, $session);
  $contents["final"] = $total;
  return $contents;
  }
  
  function nu