示例#1
0
$log->write('aliapyweb', $_REQUEST);
if ($_REQUEST['trade_status'] == 'TRADE_FINISHED' || $_REQUEST['trade_status'] == 'TRADE_SUCCESS') {
    //判断该笔订单是否在商户网站中已经做过处理
    //如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序
    //请务必判断请求时的total_fee、seller_id与通知时获取的total_fee、seller_id为一致的
    //如果有做过处理,不执行商户的业务程序
    //注意(TRADE_FINISHED):
    //退款日期超过可退款期限后(如三个月可退款),支付宝系统发送该交易状态通知
    //注意(TRADE_SUCCESS):
    //付款完成后,支付宝系统发送该交易状态通知
    //调试用,写文本函数记录程序运行情况是否正常
    //logResult("这里写入想要调试的代码变量值,或其他运行的结果记录");
    //检查订单是否存在
    $order_info = OrderInfo::get_order_info_by_sn($out_trade_no);
    if ($order_info) {
        //检查支付钱数是否被修改过
        $total_fee = $_REQUEST['total_fee'];
        $money_paid = $order_info[0]['order_money'] + $order_info[0]['shipping_fee'] - $order_info[0]['bonus'];
        if ($total_fee != $money_paid) {
            exit('error');
        }
        $order_id = $order_info[0]['order_id'];
        //支付成功,改变支付状态为yes
        if ($order_info[0]['pay_status'] == 'no') {
            $order = new OrderInfo($order_id);
            $order->pay_status();
        }
        header("location:" . URL . 'wapalipay/alipay/zfb_order_done/' . $order_id);
        exit;
    }
}