请教关于PHP购物车代码的数据库表和字段

 我来答
龙氏风采
2016-12-24 · 知道合伙人互联网行家
龙氏风采
知道合伙人互联网行家
采纳数:5849 获赞数:12817
从事互联网运营推广,5年以上互联网运营推广经验,丰富的实战经

向TA提问 私信TA
展开全部
  PHP Code
  <div id="products-wrapper">
  <h1>Products</h1>
  <div class="products">
  <?php
  //current URL of the Page. cart_update.php redirects back to this URL
  $current_url = base64_encode($url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
  $results = $mysqli->query("SELECT * FROM cart ORDER BY id ASC");
  if ($results) {
  //fetch results set as object and output HTML
  while($obj = $results->fetch_object())
  {
  echo '<div class="product">';
  echo '<form method="post" action="cart_update.php">';
  echo '<div class="product-thumb"><img src="images/'.$obj->product_img_name.'"></div>';
  echo '<div class="product-content"><h3>'.$obj->product_name.'</h3>';
  echo '<div class="product-desc">'.$obj->product_desc.'</div>';
  echo '<div class="product-info">';
  echo 'Price '.$currency.$obj->price.' | ';
  echo 'Qty <input type="text" name="product_qty" value="1" size="3" />';
  echo '<button class="add_to_cart">Add To Cart</button>';
  echo '</div></div>';
  echo '<input type="hidden" name="product_code" value="'.$obj->product_code.'" />';
  echo '<input type="hidden" name="type" value="add" />';
  echo '<input type="hidden" name="return_url" value="'.$current_url.'" />';
  echo '</form>';
  echo '</div>';
  }
  }
  ?>
  </div>
  <div class="shopping-cart">
  <h2>Your Shopping Cart</h2>
  <?php
  if(isset($_SESSION["products"]))
  {
  $total = 0;
  echo '<ol>';
  foreach ($_SESSION["products"] as $cart_itm)
  {
  echo '<li class="cart-itm">';
  echo '<span class="remove-itm"><a href="cart_update.php?removep='.$cart_itm["code"].'&return_url='.$current_url.'">×</a></span>';
  echo '<h3>'.$cart_itm["name"].'</h3>';
  echo '<div class="p-code">P code : '.$cart_itm["code"].'</div>';
  echo '<div class="p-qty">Qty : '.$cart_itm["qty"].'</div>';
  echo '<div class="p-price">Price :'.$currency.$cart_itm["price"].'</div>';
  echo '</li>';
  $subtotal = ($cart_itm["price"]*$cart_itm["qty"]);
  $total = ($total + $subtotal);
  }
  echo '</ol>';
  echo '<span class="check-out-txt"><strong>Total : '.$currency.$total.'</strong> <a href="view_cart.php">Check-out!</a></span>';
  echo '<span class="empty-cart"><a href="cart_update.php?emptycart=1&return_url='.$current_url.'">Empty Cart</a></span>';
  }else{
  echo 'Your Cart is empty';
  }
  ?>
  </div>
  cart_update.php
  PHP Code
  <?php
  session_start();
  include_once("config.php");
  //empty cart by distroying current session
  if(isset($_GET["emptycart"]) && $_GET["emptycart"]==1)
  {
  $return_url = base64_decode($_GET["return_url"]); //return url
  session_destroy();
  header('Location:'.$return_url);
  }
  //add item in shopping cart
  if(isset($_POST["type"]) && $_POST["type"]=='add')
  {
  $product_code = filter_var($_POST["product_code"], FILTER_SANITIZE_STRING); //product code
  $product_qty = filter_var($_POST["product_qty"], FILTER_SANITIZE_NUMBER_INT); //product code
  $return_url = base64_decode($_POST["return_url"]); //return url
  //limit quantity for single product
  if($product_qty > 10){
  die('<div align="center">This demo does not allowed more than 10 quantity!<br /><a href="http://sanwebe.com/assets/paypal-shopping-cart-integration/">Back To Products</a>.</div>');
  }
  //MySqli query - get details of item from db using product code
  $results = $mysqli->query("SELECT product_name,price FROM cart WHERE product_code='$product_code' LIMIT 1");
  $obj = $results->fetch_object();
  if ($results) { //we have the product info
  //prepare array for the session variable
  $new_product = array(array('name'=>$obj->product_name, 'code'=>$product_code, 'qty'=>$product_qty, 'price'=>$obj->price));
  if(isset($_SESSION["products"])) //if we have the session
  {
  $found = false; //set found item to false
  foreach ($_SESSION["products"] as $cart_itm) //loop through session array
  {
  if($cart_itm["code"] == $product_code){ //the item exist in array
  $product[] = array('name'=>$cart_itm["name"], 'code'=>$cart_itm["code"], 'qty'=>$product_qty, 'price'=>$cart_itm["price"]);
  $found = true;
  }else{
  //item doesn't exist in the list, just retrive old info and prepare array for session var
  $product[] = array('name'=>$cart_itm["name"], 'code'=>$cart_itm["code"], 'qty'=>$cart_itm["qty"], 'price'=>$cart_itm["price"]);
  }
  }
  if($found == false) //we didn't find item in array
  {
  //add new user item in array
  $_SESSION["products"] = array_merge($product, $new_product);
  }else{
  //found user item in array list, and increased the quantity
  $_SESSION["products"] = $product;
  }
  }else{
  //create a new session var if does not exist
  $_SESSION["products"] = $new_product;
  }
  }
  //redirect back to original page
  header('Location:'.$return_url);
  }
  //remove item from shopping cart
  if(isset($_GET["removep"]) && isset($_GET["return_url"]) && isset($_SESSION["products"]))
  {
  $product_code = $_GET["removep"]; //get the product code to remove
  $return_url = base64_decode($_GET["return_url"]); //get return url
  foreach ($_SESSION["products"] as $cart_itm) //loop through session array var
  {
  if($cart_itm["code"]!=$product_code){ //item does,t exist in the list
  $product[] = array('name'=>$cart_itm["name"], 'code'=>$cart_itm["code"], 'qty'=>$cart_itm["qty"], 'price'=>$cart_itm["price"]);
  }
  //create a new product list for cart
  $_SESSION["products"] = $product;
  }
  //redirect back to original page
  header('Location:'.$return_url);
  }
  ?>
  view_cart.php
  PHP Code
  <div class="view-cart">
  <?php
  $current_url = base64_encode($url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
  if(isset($_SESSION["products"]))
  {
  $total = 0;
  echo '<form method="post" action="paypal-express-checkout/process.php">';
  echo '<ul>';
  $cart_items = 0;
  foreach ($_SESSION["products"] as $cart_itm)
  {
  $product_code = $cart_itm["code"];
  $results = $mysqli->query("SELECT product_name,product_desc, price FROM cart WHERE product_code='$product_code' LIMIT 1");
  $obj = $results->fetch_object();
  echo '<li class="cart-itm">';
  echo '<span class="remove-itm"><a href="cart_update.php?removep='.$cart_itm["code"].'&return_url='.$current_url.'">×</a></span>';
  echo '<div class="p-price">'.$currency.$obj->price.'</div>';
  echo '<div class="product-info">';
  echo '<h3>'.$obj->product_name.' (Code :'.$product_code.')</h3> ';
  echo '<div class="p-qty">Qty : '.$cart_itm["qty"].'</div>';
  echo '<div>'.$obj->product_desc.'</div>';
  echo '</div>';
  echo '</li>';
  $subtotal = ($cart_itm["price"]*$cart_itm["qty"]);
  $total = ($total + $subtotal);
  echo '<input type="hidden" name="item_name['.$cart_items.']" value="'.$obj->product_name.'" />';
  echo '<input type="hidden" name="item_code['.$cart_items.']" value="'.$product_code.'" />';
  echo '<input type="hidden" name="item_desc['.$cart_items.']" value="'.$obj->product_desc.'" />';
  echo '<input type="hidden" name="item_qty['.$cart_items.']" value="'.$cart_itm["qty"].'" />';
  $cart_items ++;
  }
  echo '</ul>';
  echo '<span class="check-out-txt">';
  echo '<strong>Total : '.$currency.$total.'</strong> ';
  echo '</span>';
  echo '</form>';
  }else{
  echo 'Your Cart is empty';
  }
  ?>
  </div>
  </div>
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
创远信科
2024-07-24 广告
材料测试数据库是我们公司精心构建的核心资源之一,它集成了丰富的材料测试数据,涵盖了从基础物理性能到高级化学特性的全方位信息。这一数据库不仅为研发人员提供了宝贵的数据支持,也助力了新材料开发和技术创新。我们持续更新数据库内容,确保数据的准确性... 点击进入详情页
本回答由创远信科提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式