ホームページ  >  記事  >  バックエンド開発  >  dedecms Tenpay インターフェイス、dedecms Tenpay_PHP チュートリアル

dedecms Tenpay インターフェイス、dedecms Tenpay_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:10:51969ブラウズ

dedecms Tenpay インターフェイス、dedecms Tenpay

DreamWeaver を使用して旅行 Web サイトを作成しました。URL: http://www.redtourism.cn/ 顧客が Tenpay 支払いを求めてきたので、オンラインで購入するかどうかを検索しました。お金が欲しいなら自分で書くしかない。

コード:

if(!define('DEDEINC')) exit('リクエストエラー!');
/**
*Tenpayインターフェイスクラス
*/
class tenpay
{
var $dsql;
var $mid;

var $reqURL_onLine = "http://www.tenpay.com";

var $return_url='/plus/carbuyaction.php?dopost=return' //返信処理アドレス

/**
* コンストラクター
*
* @access public
* @param
*
*; /
function tenpay()
{
global $dsql;
$this->gt;dsql = $dsql;
}

function __construct()
{
$this->tenpay( );
}

/* *$returnurl はアドレスを送信します
* @return void
*/
function SetReturnUrl($returnurl='')
>

/**
* 支払いコードを生成します
* @param array $order 注文情報
* @param array $payment 支払い方法情報
*/Function GetCode ($ Order, $ Payment) {
Global $ , $ cfg_cmspath; g_basehost = $ cfg_basehost; . '/'.$cfg_cmspath; $ Body = $order ['OUT_TRADE_NO']; $ Bank_type = 'default'; $payment['tenpay_pay_method']; ':$ payment [' tenpay_pay_method '];
$ parameter(
trade_mode = empty(=> $ out_trade_no、' notify_url '=> $cfg_basehost。$ this-> return_url。コード'], / /返信先アドレス
'return_url' => //トランザクション説明 '' spbill_create_ip '=> 'input_charset' => 「それです」 //物流費
use using ‐ to use ’ ‐ //注文有効期限
'buyer_id' => '',                 //买方财付通帐号
            'goods_tag'            => '',                 //商品标记
            'trade_mode'           => $trade_mode,        //交易模式(1.即时到帐模式,2.中介担保模式,3.后台选择(卖家进入支付中心列表选择))
            'transport_desc'       => '',                 //物流说明
            'trans_type'           => $trans_type,        //交易类型
            'agentid'              => '',                 //平台ID
            'agent_type'           => '',                 //代理模式(0.无代理,1.表示卡易售模式,2.表示网店模式)
            'seller_id'            => ''                  //卖家商户号
        );
        ksort($parameter);
        reset($parameter);
        $param = '';
        $sign  = '';
        foreach ($parameter AS $key => $val)
        {
            $param .= "$key=" .urlencode($val). "&";
            if("" != $val && "sign" != $key) {
                $sign  .= "$key=$val&";
            }
        }
        $param = substr($param, 0, -1);
        $sign .= "key=".$payment['tenpay_key'];
        $sign = strtolower(md5($sign));  
        
        $button = '

'; $ $ボタン; 'code'] );
require_once DEDEDATA.'/payment/'.$code.'.php';

$attach = $ _GET['attach'];
$trade_state = $_GET['trade_state']

if(preg_match ("/S-P[0-9]+RN[0-9]/",$order_sn)) {
("SELECT * FROM dede_shops_orders WHERE oid = '{$order_s n}");
金額商品の合計価格と一致しません! ";
}
$ this->mid = $ row ['userid'];
️ val)
if("" != $val && "sign" && $key != 'コード') {
==".$payment['tenpay_key'];

if(strto lower(md5($sign))==strto lower($_GET['sign']))
({
if ($ Trade_State == 0) {
/* 注文ステータスを変更します* /
if ($ this-& gt; success_db ($ out_trade_no))
Return $ msg = "支払い成功!" & lt; a href='/'>ホームページに戻るa href='/member'>メンバーセンター";
;a t;ホームページに戻る メンバー センター";

}

その他{

//return $msg = "支払いに失敗しました!
ホームページに戻る メンバー センター " ;

}
}

/*商品トランザクションの処理*/
function success_db($order_sn)
{
$time=time();
$mid=$this->mid;
//注文情報を取得し、注文を確認します有効性
$row = $this->dsql->GetOne("SELECT state,priceCount FROM dede_shops_orders WHERE oid='$order_sn' "); {
return TRUE;
'1' WHERE `oid`='$ order_sn' AND `userid` = '". $ This-& GT; MID."' ";
If ($ this-& gt; dsql-gt;executenonequry ($ SQL)) 注文番号: ".$order_sn); //検証結果をファイルに保存します

FALSEを返す。"/../../data/payment/log.txt ","a");
flock($fp, LOCK_EX) ;
fwrite ($fp,$word.",実行日:".strftime("%Y-%m-%d %H:%I:% S",time())."rn");
flock($fp 、LOCK_UN);



http://www.bkjia.com/PHPjc/933470.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/933470.html

技術記事

dedecms Tenpay インターフェイス、dedecms Tenpay General Weaver が旅行 Web サイトを作成しました。URL: http://www.redtourism.cn/ 顧客は Tenpay を通じて支払いを要求し、オンラインで検索した後、購入したいか、お金が欲しいかのどちらかでした...





声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。