下面是回调代码部分
public function finish_pay(){
//存储微信的回调
$xml = $GLOBALS['HTTP_RAW_POST_DATA'];
$xta = $this->xmlToArray($xml);
$order_id = $xta['out_trade_no'];
//修改订单状态
M('pay_records')->where(array('records_order_id'=>$order_id))->save(array('records_is_pay'=>1));
//查询订单信息,用于获取用的ID
$order = M('pay_records')->where(array('records_order_id'=>$order_id))->find();
//如果存在余额数据就在原基础上累加
if($member_balance = M('member_balance')->where(array('member_id'=>$order['records_member_id']))->find()){
$save_data = array(
'member_banlance' => $member_balance['member_banlance'] + $order['records_money']
);
//修改余额
M('member_balance')->where(array('member_id'=>$order['records_member_id']))->save($save_data);
//回调给微信。。。。不知道为什么不行啊
$this->return_xml_success('ok');
}else{
//如果不存在余额记录,就添加一条
$add_data = array(
'member_id' => $order['records_member_id'],
'member_phone' => $order['records_members_phone'],
'member_banlance' => $order['records_money']
);
//回调给微信。。。。不知道为什么不行啊
M('member_balance') -> add($add_data);
$this->return_xml_success('ok');
}
}
}
private function set_xml($args)
{
$xml = "<xml>";
foreach ($args as $key=>$val)
{
if (is_numeric($val)){
$xml.="<".$key.">".$val."</".$key.">";
}else{
$xml.="<".$key."><![CDATA[".$val."]]></".$key.">";
}
}
$xml.="</xml>";
return $xml;
}
private function return_xml_success($msg){
$arr = array(
'return_code' => 'SUCCESS',
'return_msg' => $msg
);
echo $this->set_xml($arr);
exit();
}到底是什么原因呢,返回给xm最佳答案