本文整理汇总了PHP中AlipayNotify::verifyNotify方法的典型用法代码示例。如果您正苦于以下问题:PHP AlipayNotify::verifyNotify方法的具体用法?PHP AlipayNotify::verifyNotify怎么用?PHP AlipayNotify::verifyNotify使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AlipayNotify
的用法示例。
在下文中一共展示了AlipayNotify::verifyNotify方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: actionNotifyUrl
public function actionNotifyUrl()
{
//计算得出通知验证结果
$alipayNotify = new \AlipayNotify($this->alipayConfig());
$verify_result = $alipayNotify->verifyNotify();
if ($verify_result) {
//验证成功
if ($_REQUEST['trade_status'] == 'TRADE_FINISHED') {
//退款日期超过可退款期限后(如三个月可退款),支付宝系统发送该交易状态通知
echo '退款';
} else {
if ($_REQUEST['trade_status'] == 'TRADE_SUCCESS') {
//付款完成后,支付宝系统发送该交易状态通知
if (ChargeOrder::getInstance()->setOrderStatus($_REQUEST['out_trade_no'])) {
// 设置订单状态
return $this->redirect('http://wechat.baihey.com/wap/site/main#/charge_order?orderId=' . $_REQUEST['out_trade_no'] . '&payType=4');
} else {
// 设置订单状态失败
return $this->redirect('http://wechat.baihey.com/wap/site/main#/charge_order?orderId=' . $_REQUEST['out_trade_no'] . '&payType=4');
}
} else {
// 未付款
return $this->redirect('http://wechat.baihey.com/wap/site/main#/charge_order?orderId=' . $_REQUEST['out_trade_no'] . '&payType=4');
}
}
echo "success";
//请不要修改或删除
} else {
//验证失败
echo "fail";
return $this->redirect('http://wechat.baihey.com/wap/site/main#/charge_order?orderId=' . $_REQUEST['out_trade_no'] . '&payType=4');
}
}
示例2: actionAlipayOrderNotify
public function actionAlipayOrderNotify()
{
Yii::$app->response->format = Response::FORMAT_RAW;
require_once Yii::getAlias('@vendor') . "/payment/alipay/alipay.config.php";
require_once Yii::getAlias('@vendor') . "/payment/alipay/lib/alipay_notify.class.php";
$alipayNotify = new \AlipayNotify($alipay_config);
$verify_result = $alipayNotify->verifyNotify();
if ($verify_result) {
$out_trade_no = $_POST['out_trade_no'];
$trade_no = $_POST['trade_no'];
$trade_status = $_POST['trade_status'];
$model = Order::findOne(['order_sn' => $out_trade_no, 'status' => [Order::STATUS_UNPAID, Order::STATUS_CANCELLED]]);
if ($model) {
if ($trade_status === 'TRADE_SUCCESS' || $trade_status === 'TRADE_FINISHED') {
if ($model->pay()) {
$this->_sendMsg($model);
Yii::info("订单支付成功!订单号:{$out_trade_no}");
} else {
Yii::error("订单支付失败!订单号:{$out_trade_no}");
return 'fail';
}
}
}
} else {
return 'fail';
}
return 'success';
}
示例3: alipayNotify
/**
* 支付宝回调
*/
public static function alipayNotify()
{
vendor('Alipay.Notify', COMMON_PATH . 'Vendor');
$alipay_config = C('ALIPAY');
$AlipayNotify = new \AlipayNotify($alipay_config);
return $AlipayNotify->verifyNotify();
}
示例4: notify
public function notify($req)
{
require_once __DIR__ . '/mobiAlipay/lib/alipay_notify.class.php';
//计算得出通知验证结果
$alipayNotify = new AlipayNotify($this->mobiAlipayConfig);
$verifyResult = $alipayNotify->verifyNotify();
if ($verifyResult) {
//商户订单号
$out_trade_no = $req['out_trade_no'];
//支付宝交易号
$trade_no = $req['trade_no'];
//交易状态
$trade_status = $req['trade_status'];
if ($req['trade_status'] == 'TRADE_FINISHED' || $req['trade_status'] == 'TRADE_SUCCESS') {
//处理订单状态
$uid = (new \Mall\Mdu\OrderModule())->setOrderStatus($out_trade_no, $_SERVER['REQUEST_TIME']);
if ($uid != 0) {
(new \Mall\Mdu\OrderLogsModule())->addOrderLogBySn($out_trade_no, $this->di['sysconfig']['orderActType']['successPayment'], $uid, '用户', '支付成功');
echo 'success';
} else {
echo 'fail';
}
}
} else {
echo "fail";
}
}
示例5: AlipayNotify
/**
* App支付Notify
*/
function alipay_notify_app()
{
$alipay_config_app = $this->config->item('alipay_config_app');
$alipayNotify = new AlipayNotify($alipay_config_app);
$verify_result = $alipayNotify->verifyNotify();
if ($verify_result) {
//验证成功
$out_trade_no = $_POST['out_trade_no'];
//支付宝交易号
$trade_no = $_POST['trade_no'];
//交易状态
$trade_status = $_POST['trade_status'];
$this->log_result('alipay_notify', "【支付宝回调App】:\n" . json_encode($_POST) . "\n");
if ($trade_status == 'TRADE_FINISHED' || $trade_status == 'TRADE_SUCCESS') {
//判断该笔订单是否在商户网站中已经做过处理
//如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序
//如果有做过处理,不执行商户的业务程序
$order = $this->order_model->get_order_info($out_trade_no);
if ($order['TradeStatus'] != 'TRADE_FINISHED' && $order['TradeStatus'] != 'TRADE_SUCCESS') {
$data = array('TradeStatus' => $trade_status, 'TradeNo' => $trade_no, 'PayTime' => time(), 'PayType' => 'alipay');
$this->order_model->update_order_info($out_trade_no, $data);
}
}
//——请根据您的业务逻辑来编写程序(以上代码仅作参考)——
echo "success";
//请不要修改或删除
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
} else {
//验证失败
echo "fail";
//调试用,写文本函数记录程序运行情况是否正常
//logResult("这里写入想要调试的代码变量值,或其他运行的结果记录");
}
}
示例6: notify
function notify()
{
//计算得出通知验证结果
$alipayNotify = new AlipayNotify($this->alipay_config);
$verify_result = $alipayNotify->verifyNotify();
$this->log('deposit/notify ' . 'verify:' . ($verify_result ? 'true' : 'false') . ' ' . json_encode($_POST, JSON_UNESCAPED_UNICODE));
if ($verify_result) {
//验证成功
//商户订单号
$out_trade_no = $_POST['out_trade_no'];
//支付宝交易号
$trade_no = $_POST['trade_no'];
//交易状态
$trade_status = $_POST['trade_status'];
$deposit_id = intval($out_trade_no);
if (!$deposit_id) {
echo "fail";
return FALSE;
}
$record = DB::fetch_first('SELECT * FROM ' . DB::table('user_deposit') . ' WHERE ' . DB::implode(array('id' => $deposit_id)));
if (!$record) {
echo "fail";
return FALSE;
}
if ($record['status'] == TRADE_FINISHED) {
echo "success";
return TRUE;
}
switch ($trade_status) {
case 'WAIT_BUYER_PAY':
DB::update('user_deposit', array('trade_no' => $trade_no, 'status' => WAIT_BUYER_PAY, 'updatetime' => TIMESTAMP), array('id' => $deposit_id));
break;
case 'TRADE_CLOSED':
DB::update('user_deposit', array('status' => TRADE_CLOSED, 'updatetime' => TIMESTAMP), array('id' => $deposit_id));
break;
case 'WAIT_SELLER_SEND_GOODS':
$this->send_goods($record, $trade_no);
DB::update('user_deposit', array('status' => WAIT_BUYER_CONFIRM, 'updatetime' => TIMESTAMP), array('id' => $deposit_id));
break;
case 'WAIT_BUYER_CONFIRM_GOODS':
DB::update('user_deposit', array('status' => WAIT_BUYER_CONFIRM, 'updatetime' => TIMESTAMP), array('id' => $deposit_id));
break;
case 'TRADE_SUCCESS':
DB::update('user_deposit', array('status' => TRADE_UNSUPPORTED, 'updatetime' => TIMESTAMP), array('id' => $deposit_id));
break;
case 'TRADE_FINISHED':
DB::update('user_deposit', array('status' => TRADE_FINISHED, 'updatetime' => TIMESTAMP), array('id' => $deposit_id));
if ($record && $record['uid']) {
DB::query('UPDATE ' . DB::table('user_status') . ' SET ' . DB::quote_field('balance') . ' = ' . DB::quote_field('balance') . ' + ' . $record['price'] . ' WHERE ' . DB::implode(array('uid' => $record['uid'])));
}
break;
}
$this->log('deposit/notify id:' . $deposit_id . ' ' . $trade_status);
echo "success";
return TRUE;
} else {
echo "fail";
return FALSE;
}
}
示例7: verifyNotify
public function verifyNotify()
{
require_once "alipay.config.php";
require_once "lib/alipay_notify.class.php";
$alipayNotify = new \AlipayNotify($alipay_config);
return $alipayNotify->verifyNotify();
}
示例8: callback
/**
* 支付宝回调
* @param unknown $aParams
* @return Ambigous <验证结果, boolean>
*/
public static function callback($aParams)
{
require_once LIB_PATH . '/Payment/Alipay/alipay_service.class.php';
require_once LIB_PATH . '/Payment/Alipay/alipay_notify.class.php';
$alipay_config = Yaf_G::getConf('aliapy_config', null, 'alipay');
$alipayNotify = new AlipayNotify($alipay_config);
return $alipayNotify->verifyNotify($aParams);
}
示例9: verifyAlipayNotify
function verifyAlipayNotify(array $alipayConfig)
{
$alipayConfig = getAlipayConfig($alipayConfig);
$alipayNotify = new AlipayNotify($alipayConfig);
$verifyResult = (bool) $alipayNotify->verifyNotify();
echo $verifyResult ? 'success' : 'fail';
return $verifyResult;
}
示例10: endPay
function endPay($PassageInfo, $OrderInfo)
{
/* 商户号 */
$partner = $PassageInfo['StagePartnerId'];
/* 密钥 */
$key = $PassageInfo['StageSecureCode'];
require "AliPayClass/notify_url.php";
//计算得出通知验证结果
$alipayNotify = new AlipayNotify($aliapy_config);
$verify_result = $alipayNotify->verifyNotify();
if ($verify_result) {
//验证成功
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//请在这里加上商户的业务逻辑程序代
//——请根据您的业务逻辑来编写程序(以下代码仅作参考)——
//获取支付宝的通知返回参数,可参考技术文档中服务器异步通知参数列表
$out_trade_no = $_REQUEST['out_trade_no'];
//获取订单号
$trade_no = $_REQUEST['trade_no'];
//获取支付宝交易号
$total_fee = $_REQUEST['total_fee'];
//获取总价格
if ($OrderInfo['OrderId'] == $out_trade_no && $total_fee == $OrderInfo['Coin']) {
$Pay['OrderId'] = $OrderInfo['OrderId'];
$Pay['PayUserId'] = $OrderInfo['PayUserId'];
$Pay['AcceptUserId'] = $OrderInfo['AcceptUserId'];
$Pay['PassageId'] = $OrderInfo['PassageId'];
$Pay['AppId'] = $OrderInfo['AppId'];
$Pay['PartnerId'] = $OrderInfo['PartnerId'];
$Pay['SubPassageId'] = $OrderInfo['SubPassageId'];
$Pay['Amount'] = $OrderInfo['Amount'];
$Pay['Coin'] = $OrderInfo['Coin'];
$Pay['Credit'] = $OrderInfo['Credit'];
$Pay['PayIP'] = $OrderInfo['PayIP'];
$Pay['PayTime'] = $OrderInfo['PayTime'];
$Pay['UserSourceId'] = $OrderInfo['UserSourceId'];
$Pay['UserSourceDetail'] = $OrderInfo['UserSourceDetail'];
$Pay['UserSourceProjectId'] = $OrderInfo['UserSourceProjectId'];
$Pay['UserSourceActionId'] = $OrderInfo['UserSourceActionId'];
$Pay['UserRegTime'] = $OrderInfo['UserRegTime'];
$Pay['PayedTime'] = strtotime($_REQUEST['notify_time']);
$Pay['StageOrder'] = $trade_no;
$Pay['comment'] = json_encode(array('buyer_email' => $_REQUEST['buyer_email'], 'buyer_id' => $_REQUEST['buyer_id']));
return $Pay;
} else {
return false;
}
//——请根据您的业务逻辑来编写程序(以上代码仅作参考)——
echo "success";
//请不要修改或删除
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
} else {
//验证失败
echo "fail";
//调试用,写文本函数记录程序运行情况是否正常
//logResult("这里写入想要调试的代码变量值,或其他运行的结果记录");
}
}
示例11: verifyReturn
/**
* 验证支付宝的服务器返回
*
* @return boolen 返回验证状态, true代表合法请求,fasle代表无效返回
*/
public function verifyReturn()
{
$notify = new \AlipayNotify($this->_config);
if ($notify->verifyNotify()) {
return true;
} else {
return false;
}
}
示例12: notifyUrl
public function notifyUrl()
{
// require_once("alipay.config.php");
// require_once("lib/alipay_notify.class.php");
require_once public_path() . "/alipay/alipay.config.php";
require_once public_path() . "/alipay/lib/alipay_notify.class.php";
//计算得出通知验证结果
$alipayNotify = new AlipayNotify($alipay_config);
$verify_result = $alipayNotify->verifyNotify();
if ($verify_result) {
//验证成功
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//请在这里加上商户的业务逻辑程序代
//——请根据您的业务逻辑来编写程序(以下代码仅作参考)——
//获取支付宝的通知返回参数,可参考技术文档中服务器异步通知参数列表
//商户订单号
$out_trade_no = $_POST['out_trade_no'];
//支付宝交易号
$trade_no = $_POST['trade_no'];
//交易状态
$trade_status = $_POST['trade_status'];
if ($_POST['trade_status'] == 'TRADE_FINISHED') {
//判断该笔订单是否在商户网站中已经做过处理
//如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序
//请务必判断请求时的total_fee、seller_id与通知时获取的total_fee、seller_id为一致的
//如果有做过处理,不执行商户的业务程序
//注意:
//退款日期超过可退款期限后(如三个月可退款),支付宝系统发送该交易状态通知
//调试用,写文本函数记录程序运行情况是否正常
//logResult("这里写入想要调试的代码变量值,或其他运行的结果记录");
} else {
if ($_POST['trade_status'] == 'TRADE_SUCCESS') {
//判断该笔订单是否在商户网站中已经做过处理
//如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序
//请务必判断请求时的total_fee、seller_id与通知时获取的total_fee、seller_id为一致的
//如果有做过处理,不执行商户的业务程序
//注意:
//付款完成后,支付宝系统发送该交易状态通知
//调试用,写文本函数记录程序运行情况是否正常
//logResult("这里写入想要调试的代码变量值,或其他运行的结果记录");
}
}
//——请根据您的业务逻辑来编写程序(以上代码仅作参考)——
echo "success";
//请不要修改或删除
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
} else {
//验证失败
echo "fail";
//调试用,写文本函数记录程序运行情况是否正常
//logResult("这里写入想要调试的代码变量值,或其他运行的结果记录");
}
}
示例13: notifyUrl
function notifyUrl()
{
$aliPayConfig = C('aliPayConfig');
$aliPayNotify = new AlipayNotify($aliPayConfig);
$verify_result = $aliPayNotify->verifyNotify();
$_POST = $this->zaddslashes($_POST);
if ($verify_result) {
//logResult(var_export($_POST, true));
//验证成功
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//请在这里加上商户的业务逻辑程序代
//——请根据您的业务逻辑来编写程序(以下代码仅作参考)——
//获取支付宝的通知返回参数,可参考技术文档中服务器异步通知参数列表
$out_trade_no = $_POST['out_trade_no'];
//获取订单号
$trade_no = $_POST['trade_no'];
//获取支付宝交易号
$total_fee = $_POST['total_fee'];
//获取总价格
if ($_POST['trade_status'] == 'TRADE_FINISHED' || $_POST['trade_status'] == 'TRADE_SUCCESS') {
//交易成功结束
//判断该笔订单是否在商户网站中已经做过处理(可参考“集成教程”中“3.4返回数据处理”)
//如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序
//如果有做过处理,不执行商户的业务程序
echo 'success';
//请不要修改或删除
//调试用,写文本函数记录程序运行情况是否正常
//logResult("这里写入想要调试的代码变量值,或其他运行的结果记录");
} else {
$saveData['status'] = 1;
$saveData['alipay_No'] = $trade_no;
$orderCondition['order_No'] = array('eq', $out_trade_no);
$orderInfo = $this->payModel->getOrderData($orderCondition);
$points = explode('-~-', $orderInfo['points']);
$this->payModel->getSaveUserSumPointsStatus(intval($orderInfo['id']), array_sum($points));
$status = $this->payModel->getSaveOrderDataStatus(intval($orderInfo['id']), $saveData);
//logResult(var_export($_GET, true));
if ($status) {
$this->changeGoodsInventory($orderInfo);
echo 'success';
} else {
echo 'fail';
}
}
//——请根据您的业务逻辑来编写程序(以上代码仅作参考)——
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
} else {
//验证失败
echo 'fail';
//调试用,写文本函数记录程序运行情况是否正常
//logResult("这里写入想要调试的代码变量值,或其他运行的结果记录");
}
}
示例14: alipay_notify
public function alipay_notify($post)
{
require_once "lib/alipay_notify.class.php";
$this->alipay_config['cacert'] = $this->cacert;
$alipayNotify = new AlipayNotify($this->alipay_config);
$verify_result = $alipayNotify->verifyNotify();
if ($verify_result) {
return $post['trade_status'];
} else {
return "error";
}
}
示例15: notifyVerify
public function notifyVerify()
{
require_once "alipay/alipay_notify.class.php";
$alipayNotify = new AlipayNotify($this->_config);
$verify_result = $alipayNotify->verifyNotify();
//验证
if ($verify_result) {
return $_POST;
} else {
return false;
}
}