您的位置:

包含php微信app原路返回的词条

本文目录一览:

PHP微信扫码支付成功后,怎么给微信返回succ

微信支付已经由微信接管了,此时是微信通过回调的方式来通知我们的业务服务器端用户的支付状态

微信扫码支付2 支付成功后是如何返回给微信参数通知处理成功 (php版)

已解决 请问微信支付V3,在支付成功后通过哪个回调的值更新订单状态呢?

?php

ini_set('date.timezone','Asia/Shanghai');

// error_reporting(E_ERROR);

error_reporting(0);

require_once "WxPay.Api.php";

require_once 'log.php';

require_once("../../includes/mysql.class.php");

//初始化日志

// $logHandler= new CLogFileHandler("./logs/".date('Y-m-d').'.log');

// $log = Log::Init($logHandler, 15);

$xml = $GLOBALS['HTTP_RAW_POST_DATA'];

//禁止引用外部xml实体

$successdata=xmlToArray($xml);

// file_put_contents('log.txt',json_encode($successdata));

function xmlToArray($xml)

{

//将XML转为array

$array_data = json_decode(json_encode(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA)), true);

return $array_data;

}

// function printf_info($data)

// {

// foreach($data as $key=$value){

// echo "font color='#f00;'$key/font : $value br/";

// }

// }

$out_trade_no=$successdata['out_trade_no'];

if(!empty($out_trade_no)){

$input = new WxPayOrderQuery();

$input-SetOut_trade_no($out_trade_no);

$result=WxPayApi::orderQuery($input);

// printf_info($result);

if(array_key_exists("return_code", $result) array_key_exists("result_code", $result) $result["return_code"] == "SUCCESS" $result["result_code"] == "SUCCESS")

{

//file_put_contents('log.txt','支付成功'.$out_trade_no.$pid.$tel.$numbers.$poss);

//支付成功

//改变订单状态

$sql="update pai_deposit set status='1',paytime='".date("Y-m-d H:i:s")."' where out_trade_no='{$out_trade_no}'";

// file_put_contents('log.txt',$sql);

$con=new connection();

$result=$con-Query($sql);

echo "success";

$openid=$successdata['openid'];

$total_fee=$successdata['total_fee']*0.01;

$attach=$successdata['attach'];

$sql="select * from pai_deposit where out_trade_no='{$out_trade_no}'";

$result_deposit=$con-QueryArray($sql);

$sql="select * from paipro where id='".$result_deposit[0]['pid']."'";

$result_pro=$con-QueryArray($sql);

sendmsg($openid,$total_fee,$result_pro[0]['title'],$out_trade_no,$result_deposit[0]['tel']);

exit();

}

echo 'fail';

exit();

}

else

{

//file_put_contents('log.txt','支付失败2'.$out_trade_no);

echo 'fail';

exit();

}

function sendmsg($wxid,$total,$title,$order_id,$tel)

{

$access_token=new_access_token();

$url = ''.$access_token;

$w_title="付款成功通知";

// $w_url='http://'.$_SERVER['HTTP_HOST']."/mobile/user.php?act=fenxiao1wxid=".$wxid;

$w_url='';

$rtime=date("Y-m-d H:i:s");

$w_description="订单编号:{$order_id}\r\n保证金:¥{$total}元\r\n商品详情:{$title}\r\n联系电话:{$tel}\r\n付款时间:{$rtime}";

$post_msg = '{

"touser":"'.$wxid.'",

"msgtype":"news",

"news":{

"articles": [

{

"title":"'.$w_title.'",

"description":"'.$w_description.'",

"url":"'.$w_url.'",

"picurl":"'.$w_picurl.'"

}

]

}

}';

$ret_json = curl_grab_page($url, $post_msg);

$ret = json_decode($ret_json);

if($ret-errmsg != 'ok')

{

$access_token = new_access_token();

$url = ''.$access_token;

$ret_json = curl_grab_page($url, $post_msg);

$ret = json_decode($ret_json);

}

}

function curl_grab_page($url, $data, $proxy = '', $proxystatus = '', $ref_url = '') {

$ch = curl_init();

curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");

curl_setopt($ch, CURLOPT_TIMEOUT, 1);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

if ($proxystatus == 'true') {

curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, true);

curl_setopt($ch, CURLOPT_PROXY, $proxy);

}

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);

curl_setopt($ch, CURLOPT_URL, $url);

if (!empty($ref_url)) {

curl_setopt($ch, CURLOPT_HEADER, true);

curl_setopt($ch, CURLOPT_REFERER, $ref_url);

}

if (defined('CURLOPT_IPRESOLVE') defined('CURL_IPRESOLVE_V4')) {

curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);

}

curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

curl_setopt($ch, CURLOPT_POST, true);

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

ob_start();

return curl_exec ($ch);

ob_end_clean();

curl_close ($ch);

unset($ch);

}

function new_access_token() {

$appid = 'wx52dc8c34087d302c';

$appsecret ='d70878f040f08fa55766bf6d3db5508a';

$time = time();

$url = ";appid=$appidsecret=$appsecret";

$ret_json = curl_get_contents($url);

$ret = json_decode($ret_json);

return $ret-access_token;

}

function curl_get_contents($url) {

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_TIMEOUT, 1);

curl_setopt($ch, CURLOPT_USERAGENT, _USERAGENT_);

curl_setopt($ch, CURLOPT_REFERER, _REFERER_);

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

if (defined('CURLOPT_IPRESOLVE') defined('CURL_IPRESOLVE_V4')) {

curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);

}

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

$r = curl_exec($ch);

curl_close($ch);

return $r;

}

?

参考地址

已解决 请问微信支付V3,在支付成功后通过哪个回调的值更新订单状态呢?

php版微信返回用户text输入的方法

本文实例讲述了php版微信返回用户text输入的方法。分享给大家供大家参考,具体如下:

获得用户输入的内容,并发回相同内容

//获取post数据

//

$PostData

=

$HTTP_RAW_POST_DATA;

$PostData

=

file_get_contents("php://input");

//判断POST是否为空

if(!$PostData){

echo

"wrong

input!";

exit(0);

}

//解析XML字符串

$xmlObj

=

simplexml_load_string($PostData,

'SimpleXMLElement',

LIBXML_NOCDATA);

if(!$xmlObj){

echo

"wrong

input!";

exit(0);

}

//获取数据

$fromUserName

=

$xmlObj-FromUserName;

$toUserName

=

$xmlObj-ToUserName;

$msgType

=

$xmlObj-MsgType;

//返回用户输入

if('text'

!=

$msgType){

//不是文本,输出错误提示消息

$retMsg

=

"只支持文本消息";

}

//用户输入文本

else{

$content

=

$xmlObj-Content;

$retMsg

=

$content;

}

//输出xml模板

$retTmp

=

"xml

ToUserName![CDATA[%s]]/ToUserName

FromUserName![CDATA[%S]]/FromUserName

CreateTime%s/CreateTime

MsgType![CDATA[text]]/MsgType

Content![CDATA[%s]]/Content

FuncFlag0/FuncFlag

/xml";

//对消息中的通配符进行替换

$resultStr

=

sprintf($retTmp,

$fromUserName,

$toUserName,

time(),

$retMsg);

//输出xml的消息

echo

$resultStr

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP微信开发技巧汇总》、《PHP编码与转码操作技巧汇总》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

php结合app微信登录 php需要做什么操作

1、app单独做微信授权登录获取到unionid

2、app根据unionid请求服务器(php),服务器判断是否有该会员,如果没有就做注册,如有已经有了直接就返回会员信息

3、就是app请求的时候尽量吧app的平台信息(比如安卓或者ios)一起发给服务器。服务器好做登录记录

PHP怎么解析微信支付结果返回的xml

$input = file_get_contents('php://input');

if (!empty($input)  empty($_GET['out_trade_no'])) {

    $obj = simplexml_load_string($input, 'SimpleXMLElement', LIBXML_NOCDATA);

    $data = json_decode(json_encode($obj), true);

    //根据$data处理自己所要的逻辑

}

$data具体参数看微信文档,最常用的是:out_trade_no(商户订单号)、transaction_id(微信交易号)、result_code(交易状态)

交易状态如果是success记得处理完逻辑后返回一个success,不然微信会认为你的处理未完成而继续向服务器发送请求

包含php微信app原路返回的词条

2023-01-09
php服务端微信app支付(app 微信支付)

2022-11-11
基于php的微信支付(PHP微信支付)

2022-11-09
php微信绑定账号登陆,绑定微信登录

2022-11-25
包含小程序发送json后被php转移的词条

本文目录一览: 1、php怎么微信小程序发送过来的json数据 2、php如何发送和接收JSON数据 3、php json_encode 后, 汉字被转移了 4、php处理微信小程序request请求

2023-12-08
php服务端做app微信登录,php微信登陆

2022-11-29
php微信支付开发视频教程,微信php开发包

2022-12-02
php微信支付不停给回调,php 微信支付回调

2023-01-04
包含golangbreak的词条

2022-11-26
php微信支付回调,微信支付成功回调

2022-11-26
php第三节笔记,php读书笔记

2022-12-02
php开发微信支付小微商户v3,html5微信支付php

2023-01-07
php微信支付回调接口,php对接微信支付教程

2022-11-25
php微信支付v3版签名生成(php 微信支付流程)

2022-11-12
包含python使用笔记24的词条

2022-11-21
包含php的函数返回jsonencodeajax输入下拉框的

本文目录一览: 1、ajax 怎么处理php返回json数据 2、客户端如何写一个ajax请求,来读取php传递出的json数据(为浮点型)?然后可以与文本框输入的数据比较? 3、php如何实现下拉框

2023-12-08
包含php如何原版输出html格式的词条

2022-11-20
php基础学习笔记下,细说php读书笔记

2022-11-18
微信框架php,微信框架源码

2022-11-26
php微信一键登录功能,php微信一键登录功能在哪

2023-01-07