获取购物车数量计数器,以便在选择添加

时间:2015-06-25 20:22:15

标签: javascript php jquery html ajax

我的网站上有一个购物车数量计数器,它没有显示产品已添加,直到重新加载页面或转到另一个页面。我希望数量计数器能够立即显示正在添加的产品。我在每一页上都有这个数量计数器。我确定可以使用Ajax添加这样的内容,但我不知道如何开始。

我现在就这样设置:

我的网站上的每个页面都有一个页面需要,名为loadProducts.php

它认为:

//Shopping Cart Quantity Count

    if(isset($_SESSION['shopping_cart']) && is_array($_SESSION['shopping_cart'])) {
    $totalquantity = 0;
    foreach($_SESSION['shopping_cart'] AS $product) {
        $totalquantity = $totalquantity + $product['quantity'];
    }


 }
  else {
       $totalquantity = 0;
  }

有什么方法可以在我把东西放进购物车后立即加载吗?如果你想看看我的意思,我的网站是buyfarbest.com。如果您转到产品选项卡,然后添加产品。在为要配置的数量添加后,您必须转到另一个页面。

1 个答案:

答案 0 :(得分:0)

您可以使用以下命令动态地请求此数据。

cartQuantity.php

<div id='shoppingCartCounter'></div>

<script type='text/javascript'>

    function updateCartCounter() {
        $.get('path/to/cartQuantity.php', function(json) {
            var shoppingCartCounter = $('#shoppingCartCounter'); //Make a local variable to reference the appropriate div
            if(json['success']) { shoppingCartCounter.html(json['shopping_cart_quantity']) } //populate it with the count
            else shoppingCartCounter.html(''); //or erase the number altogether
        });
    }

</script>

并在你的HTML中:

updateCartCounter()

现在无论何时拨打setInterval(function(){ updateCartCounter(); }, 10000); //Update the counter every 10 seconds ,计数器都会这样做。您可以通过以下方式之一或两者执行此操作:

有间隔(效率不高)

function someCartOperation() { //This is whatever your application uses for adding/removing stuff in the cart
    /*
        Do all your important cart stuff
    */

    updateCartCounter(); //You're done working on the cart, now update the counter
}

或在购物车操作功能

{{1}}