Esempio n. 1
0
    //请务必判断请求时的total_fee、seller_id与通知时获取的total_fee、seller_id为一致的
    //如果有做过处理,不执行商户的业务程序
    //注意(TRADE_FINISHED):
    //退款日期超过可退款期限后(如三个月可退款),支付宝系统发送该交易状态通知
    //注意(TRADE_SUCCESS):
    //付款完成后,支付宝系统发送该交易状态通知
    //调试用,写文本函数记录程序运行情况是否正常
    //logResult("这里写入想要调试的代码变量值,或其他运行的结果记录");
    //检查订单是否存在
    $order_info = OrderInfo::getOrderInfoBySn($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) {
            Log::write2("支付钱数对不上, 订单号为:" . $order_info['sn'] . ", 支付宝返回总钱数" . $total_fee . "!=订单总钱数" . $money_paid . "\n" . json_encode($_REQUEST) . "\n" . json_encode($order_info) . "\n", 'wapalipay');
            exit('error');
        }
        $order_id = $order_info[0]['order_id'];
        //支付成功,改变支付状态为yes
        if ($order_info[0]['pay_status'] == 'no') {
            OrderInfo::editOrderStatus($order_id, '支付宝');
        }
        header("location:" . URL . 'wapalipay/alipay/zfb_order_done/' . $order_id);
        exit;
    } else {
        Log::write2("订单" . $out_trade_no . "不存在\n" . json_encode($_REQUEST) . "\n", 'wxpay_saoma');
    }
} else {
    Log::write2("订单" . $out_trade_no . "支付失败\n", 'wxpay_saoma');
}
Esempio n. 2
0
<?php

require_once "../../../include.php";
Log::write2("call back:\n" . json_encode($data) . "\n", 'wxpay_saoma');
//把订单中的支付改为微信支付
$sn = $data['out_trade_no'];
$order_info = OrderInfo::getOrderInfoBySn($sn);
if ($order_info) {
    //检查支付钱数是否被修改过
    $total_fee = $data["total_fee"] / 100;
    $money_paid = $order_info['order_money'] + $order_info['shipping_fee'] - $order_info['bonus'];
    if ($total_fee != $money_paid) {
        Log::write2("支付钱数对不上, 订单号为:" . $order_info . ", 微信返回总钱数" . $total_fee . "!=订单总钱数" . $money_paid . "\n" . json_encode($data) . "\n" . json_encode($order_info) . "\n", 'wxpay_saoma');
        return false;
    }
    //支付成功,改变支付状态为yes
    $order_id = $order_info['order_id'];
    if ($order_info['pay_status'] == 'no') {
        OrderInfo::editOrderStatus($order_id, '微信扫码');
        Log::write2("【支付成功】:\n" . json_encode($data) . "\n" . json_encode($order_info) . "\n", 'wxpay_saoma');
    }
} else {
    Log::write2("订单" . $sn . "不存在\n" . json_encode($data) . "\n", 'wxpay_saoma');
    return false;
}