热烈祝贺台州朗动科技的站长论坛隆重上线!(2012-05-28)    热烈庆祝伟大的祖国60周年生日 点击进来我们一起为她祝福吧(2009-09-26)    站长论坛禁止发布广告,一经发现立即删除。谢谢各位合作!.(2009-08-08)    热烈祝贺台州网址导航全面升级,全新版本上线!希望各位一如既往地支持台州网址导航的发展.(2009-03-28)    台州站长论坛恭祝各位新年快乐,牛年行大运!(2009-01-24)    台州Link正式更名为台州网址导航,专业做以台州网址为主的网址导航!(2008-05-23)    热烈祝贺台州Link资讯改名为中国站长资讯!希望在以后日子里得到大家的大力支持和帮助!(2008-04-10)    热烈祝贺台州Link论坛改名为台州站长论坛!希望大家继续支持和鼓励!(2008-04-10)    台州站长论坛原[社会琐碎]版块更名为[生活百科]版块!(2007-09-05)    特此通知:新台州站长论坛的数据信息全部升级成功!">特此通知:新台州站长论坛的数据信息全部升级成功!(2007-09-01)    台州站长论坛对未通过验证的会员进行合理的清除,请您谅解(2007-08-30)    台州网址导航|上网导航诚邀世界各地的网站友情链接和友谊联盟,共同引领网站导航、前进!(2007-08-30)    禁止发广告之类的帖,已发现立即删除!(2007-08-30)    希望各位上传与下载有用资源和最新信息(2007-08-30)    热烈祝贺台州站长论坛全面升级成功,全新上线!(2007-08-30)    
便民网址导航,轻松网上冲浪。
台州维博网络专业开发网站门户平台系统
您当前的位置: 首页 » PHP/Perl编程 » 分享给大家网银支付封装类!

分享给大家网银支付封装类!

论坛链接
  • 分享给大家网银支付封装类!
  • 发布时间:2007-10-05 11:30:42    浏览数:5854    发布者:webptr    设置字体【   
<?php
/*
+-----------------------------------------------------------------------+
| 作者: 一天空一
| Q Q: 31769416,www.176k.cn
| 时间:2006-12-16
| 功能:网银在线支付接口封装类(2.0)
+-----------------------------------------------------------------------+
*/
class Chinabank
{
//发送参数
private $v_mid; // 商户号
private $v_url; //返回url
private $key; //密钥
public $v_amount; //支付金额
private $v_m; //支付币种
private $v_md5info; //md5加密后的字符串
public $remark1; //备注字段1
public $remark2; //备注字段2
public $v_oid; //定单号
//接收参数
private $v_pmode; // 支付方式(字符串)
private $v_pstatus; // 支付状态 :20(支付成功);30(支付失败)
private $v_pstring; // 支付结果信息
private $v_md5str; //返回后的md5

function __construct($v_mid,$v_url,$key)
{
$this->v_mid = $v_mid;
$this->v_url = $v_url;
$this->key = $key;
}

/*设置支付金额*/
public function amount($amount=0)
{
$this->v_amount=floatval($amount);
}

/*设置备注*/
public function memol($memo1="",$memo2="")
{
$this->remark1=$memo1;
$this->remark2=$memo2;
}

/*生成发送校验码*/
private function send_verify()
{
$this->v_oid=date('Ymd',time())."-".$this->v_mid."-".date('His',time());
$text=$this->v_amount.$this->v_moneytype.$this->v_oid.$this->v_mid.$this->v_url.$this->key;
$this->v_md5info=strtoupper(trim(md5($text)));
$this->v_md5info=strtoupper(trim(md5($text)));
}

/*生成接收校验码*/
private function incept_verify()
{
$text=$this->v_oid.$this->v_pstatus.$this->v_amount.$this->v_moneytype.$this->key;
return strtoupper(trim(md5($text)));
}

/*提交支付请求*/
public function pay_send()
{
$this->send_verify();
$result="

v_md5info}'>
v_mid}'>
v_oid}'>
v_amount}'>
v_moneytype}'>
v_url}'>
remark1}'>
remark2}'>

re.submit();
";
$result=trim($result);
echo $result;
}

/*提交返回处理*/
public function pay_receive()
{
$this->v_oid = trim($_POST['v_oid']);
$this->v_pmode = trim($_POST['v_pmode']);
$this->v_pstatus = trim($_POST['v_pstatus']);
$this->v_pstring = trim($_POST['v_pstring']);
$this->v_amount = trim($_POST['v_amount']);
$this->v_moneytype = trim($_POST['v_moneytype']);
$this->remark1 = trim($_POST['remark1']);
$this->remark2 = trim($_POST['remark2']);
$this->v_md5str = trim($_POST['v_md5str']);
}

/*判断返回是否有效信息*/
public function check_pay_receive()
{
if ($this->v_md5str==$this->incept_verify()) {
return true;
} else {
return false;
}
}

/*判断返回是否提交成功*/
public function check_pay()
{
if($this->v_pstatus=='20'){
return true;
} else {
return false;
}
}

}
?> 调用:
发送:
$pay_num =0.01;
$v_mid = 1234578995 ;
$v_url = "http://59.57.64.168/zl/index.php/Block/disposal";
$key = '#$%%45454235243&*';
$pay = new Chinabank($v_mid,$v_url,$key);
$pay->amount($pay_num);
$pay->pay_send(); 返回处理
$v_mid = 1234578995 ;
$v_url = "http://59.57.64.168/zl/index.php/Block/disposal";
$key = '#$%%45454235243&*';
$pay = new Chinabank($v_mid,$v_url,$key);
$pay->pay_receive();
if ($pay->check_pay_receive()) {
if ($pay->check_pay()) {
//成功处理..
} esle {
echo "支付流程出现问题";
}

}else {
echo 'Md5校验码错误";
}
娱乐休闲专区A 影视预告B 音乐咖啡C 英语阶梯D 生活百科
网页编程专区E AMPZF HTMLG CSSH JSI ASPJ PHPK JSPL MySQLM AJAX
Linux技术区 N 系统管理O 服务器架设P 网络/硬件Q 编程序开发R 内核/嵌入
管理中心专区S 发布网址T 版主议事U 事务处理