如何使用javascript / jquery从php获取总计

TrueCode

现在是第三天,我想弄清楚数量变化时如何更新总计。我已经按价格计算了,总计随着我更改数量而更新,但是对于总计,我无法做到。这是我的代码

  <?php 
                                if(isset($_POST['prod_id'])){
                                    $prod_id =$_POST['prod_id'];
                                    $prod_qty=$_POST['qty'];
                                    $up_cart="UPDATE `cart` SET `qty` = '$prod_qty' WHERE `cart`.`product_id` = '$prod_id'";
                                    $up_cart_run = mysqli_query($conn,$up_cart);
                                    if($up_cart_run){
                                        echo "done";
                                    }

                                }
                                ?>


                                    <?php       


                                        $cart_item_query="SELECT * FROM cart";
                                        $cart_item_run = mysqli_query($conn,$cart_item_query);
                                        if (mysqli_num_rows($cart_item_run)>0){
                                            $grand_total=0;
                                            while($cart_row=mysqli_fetch_array($cart_item_run)){
                                                $pro_id = $cart_row['product_id'];
                                                $pro_qty = $cart_row['qty'];


                                                $product_query="SELECT * FROM products WHERE product_id = '$pro_id'";
                                                $product_run = mysqli_query($conn, $product_query);
                                                $product_row = mysqli_fetch_array($product_run);
                                                $pro_name = $product_row['product_name'];
                                                $pro_image = $product_row['product_image'];
                                                $pro_sell_price = $product_row['sell_price'];
                                                $total = $pro_sell_price*$pro_qty;
                                                $grand_total =$grand_total+ $total;


                                    ?>

                                    <div class="row">

                                        <div class="col-md-3 col-xs-3"><img src="img/<?php echo $pro_image; ?>" alt="" width="50px"></div>
                                        <div class="col-md-3 col-xs-3"><p><?php echo $pro_name; ?></p><a href=""><p><i class="fa fa-trash" aria-hidden="true"></i> Remove</p></a></div>
                                        <div class="col-md-2 col-xs-2">
                                            <select class="change_qty" size="1" style="width:50px;">
                                                <?php
                                                for ($i = 1; $i <= 9; $i++) {
                                                    $selected = $pro_qty == $i? 'selected' : '';
                                                    echo "<option class='qty' data-pro='{$pro_id}' value='{$i}' {$selected}>{$i}</option>";
                                                }
                                                ?>
                                            </select>
                                        </div>

                                        <div class="col-md-2 col-xs-2"><input data-pro="<?php echo $pro_id; ?>" id="price-<?php echo $pro_id; ?>" type="text" value="<?php echo $pro_sell_price; ?>" disabled class="form-control dis-input price"></div>
                                        <div class="col-md-2 col-xs-2"><input id="total-<?php echo $pro_id; ?>" data-pro="<?php echo $pro_id; ?>" type="text" value="<?php echo $total; ?>" disabled class="form-control dis-input total"></div>

                                    </div>

                                    <hr>

                                    <?php

                                            }
                                        }

                                    ?>




                            </div>
                        </div>
                    </div>
                    <div class="col-md-3">
                        <div class="card">
                            <div class="card-body">
                                <div id="cart_total"></div>

                                <h3>TOTAL <span class="pull-right" id="grand_total">RS. <?php echo $grand_total;?></span></h3> <br>
                                <a href="" class="btn btn-secondary btn-block">PLACE ORDER</a><br>
                                <h5>ORDER SUMMARY</h5>
                                <P>Total Price <span class="pull-right">RS.50000</span> </P>
                                <P>Discount <span class="pull-right text-success">- Rs.0</span> </P>
                                <P>Sub Total <span class="pull-right">Rs.60000</span> </P>
                                <P>Estimated GST <span class="pull-right">Rs.0</span> </P>
                                <P>Delivery Charges <span class="pull-right">Rs.0</span> </P><hr>
                                <h5>Total Payable <span class="pull-right">RS. 60000</span> </h5>


                            </div>
                        </div>

这是js

$('body').delegate('.change_qty','change',function(){
         var qty = $(this).val();
        var prod_id = $('option:selected', this).attr('data-pro');
        var price = $('#price-'+prod_id).val();
        var total = qty*price;
        $('#total-'+prod_id).val(total);


        up_cart();
        function up_cart(){
            $.ajax({
                url:'cart.php',
                method:'POST',
                data:{prod_id:prod_id,
                      qty:qty
                     },
                success:function(response){

                }
            });
        }
    });

现在,除了总计以外,其他一切都正常。刷新页面上的总计更新,但我希望它随着价格变化而更新。谢谢。

标记

您必须创建一个PHP文件,例如“ calc_grand_total.php”之类的文件,并在ajax调用中使用它而不是“ cart.php”。在您的PHP文件中,应该使用发送到文件的参数来计算总计,然后返回文章的总计。在ajax调用的成功函数中,您可以使用jQuery输出并刷新cart.php中的总计。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章