source/index/recharge_tenpay.ctrl.php

(开头部分) 9KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<?php 
class recharge_tenpayControl extends skymvc{
	public $userid;
	public function __construct(){
		parent::__construct();
	}
	
	public function onDefault(){
		exit("暂无权限");
	}
	/*后台处理*/
	public function onNotify(){
		unset($_GET['a']);
		unset($_GET['m']);
		require (ROOT_PATH."/api/tenpay/classes/function.php");
		require (ROOT_PATH."/api/tenpay/classes/ResponseHandler.class.php");
		require (ROOT_PATH."/api/tenpay/classes/RequestHandler.class.php");
		require (ROOT_PATH."/api/tenpay/classes/client/ClientResponseHandler.class.php");
		require (ROOT_PATH."/api/tenpay/classes/client/TenpayHttpClient.class.php");
		
		require_once (ROOT_PATH."/api/tenpay/tenpay_config.php");
		//log_result("进入后台回调页面".json_encode($_GET)); 
		/* 创建支付应答对象 */
		$resHandler = new ResponseHandler();
		$resHandler->setKey($key);
		//判断签名
		if($resHandler->isTenpaySign()) {
			//通知id
			$notify_id = $resHandler->getParameter("notify_id");
			
			//通过通知ID查询,确保通知来至财付通
			//创建查询请求
			$queryReq = new RequestHandler();
			$queryReq->init();
			$queryReq->setKey($key);
			$queryReq->setGateUrl("https://gw.tenpay.com/gateway/simpleverifynotifyid.xml");
			$queryReq->setParameter("partner", $partner);
			$queryReq->setParameter("notify_id", $notify_id);
				
			//通信对象
			$httpClient = new TenpayHttpClient();
			$httpClient->setTimeOut(5);
			//设置请求内容
			$httpClient->setReqContent($queryReq->getRequestURL());
			$h_r=$httpClient->call();
			//log_result("判断签名中 ".$h_r." \r\n");
			//后台调用
			
			if($h_r) {
			//设置结果参数
				$queryRes = new ClientResponseHandler();
				$queryRes->setContent($httpClient->getResContent());
				$queryRes->setKey($key);
				
				if($resHandler->getParameter("trade_mode") == "1"){
			//判断签名及结果(即时到帐)
			//只有签名正确,retcode为0,trade_state为0才是支付成功
					if($queryRes->isTenpaySign() && $queryRes->getParameter("retcode") == "0" && $resHandler->getParameter("trade_state") == "0") {
					//	log_result("即时到帐验签ID成功");
			//取结果参数做业务处理
后面还有 221 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。