今天给各位分享购物车的数量怎么做php的知识,其中也会对怎么增加购物车数量进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录:
php购物车显示数量加载问题?
像这种动态数据的改变,必须要由ajax实现的。
你可以在按钮上添加一个js事件,每当加减的时候,调用后台那个function方法。
把参数传好,就能够得到具体的数据了。
php 库存有200个但加入购物车要一个要怎么编写
库存是库存,这个存放在一个表,然后购物车信息放在一个表,这样就好的,
在商品页面,点击加入购物车的时候, 将这个商品id和用户id插入购物车表就行的 , 如果由业务逻辑,就将库存表数量进行-1操作,这个是update table set count = count 1 where id = 1 大概这样 的操作
求php增加购物车数量的加减,
伪代码:
前端:在你页面上数量那栏增加
div class="quantity-form"a href="javascript:void(0);" clstag="cart_num_down" class="decrement disabled" id="decrement_8888_526830_1_1"-/a
input autocomplete="off" type="text" class="itxt" value="1" id="changeQuantity_8888_526830_1_1_0" minnum="1"
a href="javascript:void(0);" clstag="cart_num_up" class="increment" id="increment_8888_526830_1_1_0"+/a
/div
你的购物车是个循环列表,可以去得到,每个商品的信息:id是商品
function cart_num_up(id,uid){
$.ajax({
type: "POST",
url: "CART_num.PHP",
data: {id:id, num:-1,uid:uid},
dataType: "json",
success: function(data){
if(data.status==1){
});
});
}
function cart_num_down(id,uid){
$.ajax({
type: "POST",
url: "CART_num.PHP",
data: {id:id, num:1,uid:uid},
dataType: "json",
success: function(data){
if(data.status==1){
});
});
}
点一次 加或减按钮,触发js向后端发起ajax请求:返回的是增加成功和失败状态和剩余数量;
CART_num.PHP
$id = (int)$_POST['id'];
$num = (int)$_POST['num'];
$uid =(int)$_POST['uid']; //有封装获取post或get函数更好
//查库看库存
$sort = get_kucun_num();
//查看购物车目前数量
$cart_num = get_cart_num(uid,id);
//判断库存
if($sort $cart_num){
}else{
}
if($num0){
//减法 $sql =“update cart set cart_num = cart_num-1 where uid =uid and id =id ”
if(($cart_num-1)1){
}else{
}){
//加法 $sql =“update cart set cart_num = cart_num+1 where uid =uid and id =id ”
}else{
//不正确的请求
}
php怎么用session做购物车
class cart
{
/**
* 函数名称: addItem
* 函数功能: 添加商品
* 输入参数: $data ------------商品数组
* 函数返回值: none
* 其它说明: 因为数据是记录在session中,所以不用返回
*/
function addItem($data){
global $config_kezhi;
if(is_array($data)!empty($data)){
foreach($data as $key=$val){
// 如果商品存在就加数量和价格
if($this-_isExists($key)){
$_SESSION['cart'][$key]["paddy_count"] += $val['paddy_count'];
$_SESSION['cart'][$key]["market_count"] += $val['market_count'];
$_SESSION['cart'][$key]["goodsnum"] += intval($val['goodsnum']);
$arr = $this-getItems($key);
// $_SESSION['cart'][$key]["count"] += $_SESSION['cart'][$key]["price"];
/* if(strlen($_SESSION['cart'][$key]["kezhi"])0){//没有刻字,加入刻字
$_SESSION['cart'][$key]["eng_price"]=0;
$_SESSION['cart'][$key]["eng_price"]=(int)$config_kezhi*intval($arr['num']);
}else{
//die("dd");
$_SESSION['cart'][$key]["eng_price"]=0;
}*/
//echo $arr['num'];
//die();
}
// 否则直接加入
else
{
$_SESSION['cart'][$key] = $data[$key];
// $_SESSION['cart'][$key]["name"] = $val['name'];
// $_SESSION['cart'][$key]["price"] = $val['price'];
// $_SESSION['cart'][$key]["count"] = round($val['price']*intval($val['num']),2);
// $_SESSION['cart'][$key]["num"] = intval($val['num']);
}
}
}
}
/**
* 函数名称: _isExists
* 函数功能: 判断此商品是否存在
* 输入参数: $id ---------商品ID
* 函数返回值: bool
* 其他说明: 2004-8-19
*/
function _isExists($id)
{
if(isset($_SESSION['cart'][$id])!empty($_SESSION['cart'][$id])array_key_exists($id,$_SESSION['cart']))
{
Return true;
}
else
{
Return false;
}
}
/**
* 函数名称: modItem
* 函数功能: 修改商品数量
* 输入参数: $id -------------商品ID
* $num ------------商品数量
* 函数返回值: 返回值说明
* 其他说明: 说明
*/
function modItem($id,$num)
{
$arr = $this-getItems($id);
// 如果商品存在就加数量和价格
if($this-_isExists($id))
{
$_SESSION['cart'][$id]["goodsnum"] = intval($num);
if($arr['paddy_price_special'] "0"){
$_SESSION['cart'][$id]["paddy_count"] = round($arr['paddy_price_special']*intval($num),2);
}elseif($arr['paddy_userprice'] "0"){
$_SESSION['cart'][$id]["paddy_count"] = round($arr['paddy_userprice']*intval($num),2);
}elseif($arr['paddy_spreadprice'] "0"){
$_SESSION['cart'][$id]["paddy_count"] = round($arr['paddy_spreadprice']*intval($num),2);
}else{
$_SESSION['cart'][$id]["paddy_count"] = round($arr['paddy_price']*intval($num),2);
}
$_SESSION['cart'][$id]["market_count"] = round($arr['market_price']*intval($num),2);
}
}
/**
* 函数名称: modItem_wanwei
* 函数功能: 修改商品腕围
* 输入参数: $id -------------商品ID
* $num ------------商品腕围
* 函数返回值: 返回值说明
* 其他说明: 说明
*/
function modItem_wanwei($id,$wanwei)
{
$arr = $this-getItems($id);
// 如果商品存在就加数量和价格
if($this-_isExists($id))
{
$_SESSION['cart'][$id]["wanwei"] = intval($wanwei);
///$_SESSION['cart'][$id]["count"] = round($arr['price']*intval($num),2);
}
}
// function modItem_kezhi($id,$kezhi)
// {
// global $config_kezhi;
// $arr = $this-getItems($id);
// // 如果商品存在就加数量和价格
// if($this-_isExists($id))
// {
// $_SESSION['cart'][$id]["kezhi"] = $kezhi;
// $_SESSION['cart'][$id]['price'] = $arr['price'] + $config_kezhi;
// $_SESSION['cart'][$id]['count'] = round($_SESSION['cart'][$id]['price']*intval($arr['num']),2);
// }
// }
function modItem_kezhi($id,$kezhi,$kezhi1="",$kezhi2="")
{
global $config_kezhi;
$arr = $this-getItems($id);
// 如果商品存在就加数量和价格
//var_dump($_SESSION['cart']);
// die();
if($this-_isExists($id))
{
if(strlen($_SESSION['cart'][$id]["kezhi"]) == 0 strlen($kezhi) != 0){//没有刻字,加入刻字
//$arr['price'] += $config_kezhi;
$_SESSION['cart'][$id]["eng_price"]=0;
$_SESSION['cart'][$id]["eng_price"]=(int)$config_kezhi*intval($arr['num']);
//$_SESSION['cart'][$id]["price"] = $arr['price'];
// $_SESSION['cart'][$id]["count"] = round($arr['price']*intval($arr['num']),2);
$_SESSION['cart'][$id]["kezhi"] = $kezhi;
$_SESSION['cart'][$id]["kezhi1"] = $kezhi1;
$_SESSION['cart'][$id]["kezhi2"] = $kezhi2;
///$_SESSION['cart'][$id]["count"] = round($arr['price']*intval($num),2);
}elseif(strlen($_SESSION['cart'][$id]["kezhi"]) != 0 strlen($kezhi) == 0){//有刻字,去除刻字
$_SESSION['cart'][$id]["eng_price"]=0;
//$_SESSION['cart'][$id]["eng_price"]-=(int)$config_kezhi*intval($arr['num']);
// $_SESSION['cart'][$id]["eng_price"]-=$config_kezhi;
//$_SESSION['cart'][$id]["price"] = $arr['price'];
//$_SESSION['cart'][$id]["count"] = round($arr['price']*intval($arr['num']),2);
$_SESSION['cart'][$id]["kezhi"] = $kezhi;
$_SESSION['cart'][$id]["kezhi1"] = $kezhi1;
$_SESSION['cart'][$id]["kezhi2"] = $kezhi2;
}elseif(strlen($_SESSION['cart'][$id]["kezhi"]) != 0 strlen($kezhi) != 0){//有刻字,更改刻字
//$_SESSION['cart'][$id]["count"] = round($arr['price']*intval($arr['num']),2);
//$_SESSION['cart'][$id]["eng_price"]=0;
$_SESSION['cart'][$id]["eng_price"]=(int)$config_kezhi*intval($arr['num']);
$_SESSION['cart'][$id]["kezhi"] = $kezhi;
$_SESSION['cart'][$id]["kezhi1"] = $kezhi1;
$_SESSION['cart'][$id]["kezhi2"] = $kezhi2;
}
}
}
/**
* 函数名称: getItems
* 函数功能: 取得商品数组
* 输入参数: $id --------------某商品的ID
* 函数返回值: array
* 其它说明: 2004-8-19
*/
function getItems($id=null)
{
if(isset($_SESSION['cart']))
{
if($id==null)
{
//print_r($_SESSION['cart']);exit;
Return $_SESSION['cart'];
}
else
{
Return $_SESSION['cart'][$id];
}
}
}
/**
* 函数名称: emptyItem
* 函数功能: 删除商品
* 输入参数: $id ----------商品ID
* 函数返回值: bool
* 其它说明: 2004-8-19
*/
function emptyItem($id=null)
{
if($id==null)
{
unset($_SESSION['cart']);
}
else
{
unset($_SESSION['cart'][$id]);
}
}
/**
* 函数名称: sum
* 函数功能: 统计总价
* 输入参数: none
* 函数返回值: int
* 其它说明: 2004-8-19
*/
function sum()
{
$total = 0;
if(isset($_SESSION['cart'])!empty($_SESSION['cart']))
{
foreach($_SESSION['cart'] as $key=$val)
{
$total += $val['count'];
}
}
Return $total;
}
}
关于购物车的数量怎么做php和怎么增加购物车数量的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。