Esempio n. 1
0
 public function cx($conf)
 {
     $params = array('version' => '5.0.0', 'encoding' => 'utf-8', 'certId' => getSignCertId(), 'signMethod' => '01', 'txnType' => '00', 'txnSubType' => '00', 'bizType' => '000000', 'accessType' => '0', 'channelType' => '07', 'orderId' => $conf['ordernumber'], 'merId' => '898110248160161', 'txnTime' => date("YmdHis", strtotime($conf['addtime'])));
     // 签名
     sign($params);
     // 发送信息到后台
     $result = sendHttpRequest($params, SDK_SINGLE_QUERY_URL);
     //返回结果展示
     $result_arr = coverStringToArray($result);
     $insert = array();
     $insert['ordernumber'] = $conf['ordernumber'];
     $insert['fqtime'] = $conf['addtime'];
     $insert['ylnumber'] = isset($result_arr['queryId']) ? $result_arr['queryId'] : 0;
     $insert['yltime'] = isset($result_arr['traceTime']) ? $result_arr['traceTime'] : 0;
     $insert['ylstatus'] = $conf['cztype'];
     $insert['cxtime'] = date("Y-m-d  H:i:s");
     $insert['cxstatus'] = $result_arr['respCode'];
     $insert['cxmiaosu'] = $result_arr['respMsg'];
     $insert['userId'] = $conf['userId'];
     $insert['origRespCode'] = isset($result_arr['origRespCode']) ? $result_arr['origRespCode'] : 0;
     $insert['origRespMsg'] = isset($result_arr['origRespMsg']) ? $result_arr['origRespMsg'] : 0;
     $this->db->insert("yinlian", $insert);
     if ($this->db->insert_id() > 0) {
         $this->db->query("update  `cz`  set  `cl`=1  where   logId=" . $conf['logId']);
     }
 }
Esempio n. 2
0
 function getTN($order)
 {
     $this->params['orderId'] = $order['OrderID'];
     $this->params['txnTime'] = date('YmdHis');
     $this->params['txnAmt'] = $order['OrderPrice'] * 100;
     $this->params['reqReserved'] = base64_encode(json_encode(array('pay_type' => 3)));
     $params = $this->params;
     sign($params);
     $result = sendHttpRequest($params, SDK_App_Request_Url);
     $result_arr = coverStringToArray($result);
     //        echo '<pre>';
     //        print_r($params);
     //        print_r($result_arr);
     if (verify($result_arr)) {
         return $result_arr["tn"];
     } else {
         return false;
     }
 }
<?php 
header('Content-type:text/html;charset=utf-8');
include_once $_SERVER['DOCUMENT_ROOT'] . '/upacp_sdk_php/utf8/func/common.php';
include_once $_SERVER['DOCUMENT_ROOT'] . '/upacp_sdk_php/utf8/func/SDKConfig.php';
include_once $_SERVER['DOCUMENT_ROOT'] . '/upacp_sdk_php/utf8/func/secureUtil.php';
include_once $_SERVER['DOCUMENT_ROOT'] . '/upacp_sdk_php/utf8/func/httpClient.php';
include_once $_SERVER['DOCUMENT_ROOT'] . '/upacp_sdk_php/utf8/func/log.class.php';
/**
 *	预授权完成
 */
/**
 *	以下代码只是为了方便商户测试而提供的样例代码,商户可以根据自己需要,按照技术文档编写。该代码仅供参考
 */
// 初始化日志
$log = new PhpLog(SDK_LOG_FILE_PATH, "PRC", SDK_LOG_LEVEL);
$log->LogInfo("===========处理后台请求开始============");
$params = array('version' => '5.0.0', 'encoding' => 'utf-8', 'certId' => getSignCertId(), 'signMethod' => '01', 'txnType' => '03', 'txnSubType' => '00', 'bizType' => '000201', 'accessType' => '0', 'channelType' => '07', 'orderId' => date('YmdHis'), 'merId' => '888888888888888', 'origQryId' => '201502281110005523968', 'txnTime' => date('YmdHis'), 'txnAmt' => '100', 'backUrl' => SDK_BACK_NOTIFY_URL, 'reqReserved' => ' 透传信息');
// 签名
sign($params);
echo "请求:" . getRequestParamString($params);
$log->LogInfo("后台请求地址为>" . SDK_BACK_TRANS_URL);
// 发送信息到后台
$result = sendHttpRequest($params, SDK_BACK_TRANS_URL);
$log->LogInfo("后台返回结果为>" . $result);
echo "应答:" . $result;
//返回结果展示
$result_arr = coverStringToArray($result);
echo verify($result_arr) ? '验签成功' : '验签失败';
?>

Esempio n. 4
0
<?php

include_once './func/SDKConfig.php';
include_once './func/common.php';
include_once './custom_func.php';
$f = fopen($CALLBACK_TEST_FILE, 'w+');
fwrite($f, file_get_contents('php://input'));
fclose($f);
$post_data = coverStringToArray(file_get_contents('php://input'));
if ($post_data['reqReserved'] != get_callback_reserved_string()) {
    die('Authentication failed!');
}
if ($post_data['txnType'] == '01' && $post_data['txnSubType'] == '01') {
    if ($post_data['respCode'] == '00') {
        pay_succeeded($post_data);
    } else {
        pay_failed($post_data);
    }
}
echo file_get_contents('php://input');
Esempio n. 5
0
 public function cancelpay($oid)
 {
     $order = M('Order');
     $map['oid'] = $oid;
     $oinfo = $order->where($map)->find();
     if ($oinfo['paytype'] == '0') {
         $log = new \PhpLog(SDK_LOG_FILE_PATH, "PRC", SDK_LOG_LEVEL);
         $log->LogInfo("============处理前台请求开始===============");
         // 初始化日志
         $params = array('version' => '5.0.0', 'encoding' => 'utf-8', 'certId' => getSignCertId(), 'signMethod' => '01', 'txnType' => '32', 'txnSubType' => '00', 'bizType' => '000201', 'accessType' => '0', 'channelType' => '07', 'orderId' => build_order_no(), 'merId' => '898110275120075', 'txnTime' => date('YmdHis'), 'backUrl' => SDK_CDE_BACK_NOTIFY_URL, 'reqReserved' => ' 透传信息');
         $params['origQryId'] = $oinfo['trade_no'];
         $cdeposit = $oinfo['deposit'] + $oinfo['c_price'];
         $params['txnAmt'] = 10;
         //floatval($cdeposit) * 100;
         sign($params);
         //echo "请求:" . getRequestParamString ( $params );
         $log->LogInfo("后台请求地址为>" . SDK_BACK_TRANS_URL);
         // 发送信息到后台
         $result = sendHttpRequest($params, SDK_BACK_TRANS_URL);
         $log->LogInfo("后台返回结果为>" . $result);
         //echo "应答:" . $result;
         //返回结果展示
         $result_arr = coverStringToArray($result);
         if (verify($result_arr)) {
             if ($result_arr['respCode'] == '00') {
                 return true;
             } else {
                 return false;
             }
         } else {
             return false;
         }
     } else {
         return false;
     }
 }