exit; } if ($opera == 'edit') { $recharge_sn = getPOST('erecharge_sn'); $remark = getPOST('remark'); if ($recharge_sn == '') { show_system_message('参数错误'); } else { $recharge_sn = $db->escape($recharge_sn); } if ($remark == '') { show_system_message('请填写备注信息'); } else { $remark = $db->escape($remark); } if (update_recharge($recharge_sn, 3, $_SESSION['account'], '线下充值:' . $remark)) { show_system_message('充值记录已处理', array(array('link' => 'recharge.php', 'alt' => '充值列表'))); } else { show_system_message('系统繁忙'); } } if ('edit' == $act) { $recharge_sn = getGET('sn'); if ($recharge_sn == '') { show_system_message('参数错误'); } else { $recharge_sn = $db->escape($recharge_sn); } $get_recharge = 'select * from ' . $db->table('recharge') . ' where `recharge_sn`=\'' . $recharge_sn . '\''; $recharge = $db->fetchRow($get_recharge); assign('recharge', $recharge);
//支付成功 $sn = $data->out_trade_no; $sn = $db->escape($sn); $pattern = '/R.*/'; $data->sign = strtolower($data->sign); if (preg_match($pattern, $sn)) { //充值订单 $get_recharge_info = 'select `account`,`amount` from ' . $db->table('recharge') . ' where `recharge_sn`=\'' . $sn . '\''; $recharge = $db->fetchRow($get_recharge_info); if ($recharge && $recharge['amount'] * 100 == $data->total_fee && $data->sign == tenpay_sign($data, $mch_key)) { $log->record($sn . '支付成功'); $recharge_data = array('status' => 3); //验证充值金额正确 $flag = $db->autoUpdate('recharge', $recharge_data, '`recharge_sn`=\'' . $sn . '\' and `status`<3'); if ($flag && $db->get_affect_rows()) { update_recharge($sn, 3, $recharge['account'], '在线充值'); $log->record('充值成功,成功更新充值记录'); } } else { //充值金额不正确或返回不正确 } } else { //支付成功 $sn = $data->out_trade_no; $sn = $db->escape($sn); //产品订单 $get_order_info = 'select `total_amount`,`account`,`integral_amount`,`integral_given_amount` from ' . $db->table('order') . ' where `order_sn`=\'' . $sn . '\''; $order = $db->fetchRow($get_order_info); if ($order && $order['amount'] * 100 == $data->total_fee && $data->sign == tenpay_sign($data, $mch_key)) { //验证订单金额正确 //1. 设置订单为已付款