jQuery正在点击取消按钮

时间:2014-04-24 05:15:07

标签: php

我有一个类参考股票功能。我有一个包含php和jquery的文件。在PHP代码中,我检查库存中的产品是否等于零,将弹出确认框。问题是,当我点击取消按钮时,ajax仍然运行该类的功能并更新我的数据库,但我发现警报成功没有加载。我该怎么办?抱歉我的英语不好。

php文件:

<?php if($record['product_in_stock']<=0){?>
            <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
                       <script type="text/javascript" language="javascript">
                        if(confirm('Product in stock is empty now, Do you want to continue?')){
                                alert('ok');
                               var order_id="12059";


                              $.ajax({
                                    url:'components/com_virtuemart/classes/check_product_instock.php',
                                    type:'post',
                                    data: order_id,
                                    success: function(){
                                        alert(success);

                                    }
                                });

                            return true;
                          }else{
                                alert('no');
                               return false;
                          }

                         </script>
<?php }?>

check_product_instock.php类

    <?php
if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
class checkStock{
    private $order_id;
function getOrderId(){
    if(isset($_POST['order_id'])){
        $this->order_id=$_POST['order_id'];

    }
}
function check(){

if(isset($_POST) && $_POST['order_id']>0){

$order_id=$_POST['order_id'];

        $q = "SELECT product_id, product_quantity FROM jos_vm_order_item WHERE order_id='".$order_id."'";

             $result=mysql_query($q);
              while ($record=mysql_fetch_array($result)) {
                  $q = "UPDATE jos_vm_product
                      SET product_in_stock=product_in_stock - ".$record["product_quantity"].",
                      product_sales=product_sales + ".$record["product_quantity"]."
                      WHERE product_id=".$record["product_id"];
                      mysql_query($q);

              }

        }
    }
}
$stock = new checkStock();
$stock->check();

1 个答案:

答案 0 :(得分:0)

  • 首先,我认为你在if条件中不要求返回true 返回false

  • 其次,你必须在ajax函数中传递参数,例如 data:&#39; order_id =&#39; + order_id,。只有这样,php文件(check_product_instock.php)才能读取POST值。