forked from gaozhifeng/PHPMyWind
-
Notifications
You must be signed in to change notification settings - Fork 0
/
orderpay.php
128 lines (99 loc) · 4.04 KB
/
orderpay.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
<?php require_once(dirname(__FILE__).'/include/config.inc.php');
/*
**************************
(C)2010-2015 phpMyWind.com
update: 2013-2-5 15:23:24
person: Adu
**************************
*/
//检测支付宝信息
if(empty($cfg_alipay_uname) or
empty($cfg_alipay_partner) or
empty($cfg_alipay_key))
{
echo '系统没有设置支付宝信息。请在后台【网站信息配置】->【核心设置】中设置支付宝信息!';
exit();
}
//初始化参数
$id = isset($id) ? intval($id) : '';
$c_uname = isset($id) ? AuthCode($_COOKIE['username']) : '';
//查询订单信息
$row = $dosql->GetOne("SELECT * FROM `#@__goodsorder` WHERE `username`='$c_uname' AND `id`=$id");
if(!isset($row) or !is_array($row))
{
echo '非法操作!';
exit();
}
//支付宝开始
/* *
* 功能:即时到账交易接口接入页
* 版本:3.3
* 修改日期:2012-07-23
* 说明:
* 以下代码只是为了方便商户测试而提供的样例代码,商户可以根据自己网站的需要,按照技术文档编写,并非一定要使用该代码。
* 该代码仅供学习和研究支付宝接口使用,只是提供一个参考。
*************************注意*************************
* 如果您在接口集成过程中遇到问题,可以按照下面的途径来解决
* 1、商户服务中心(https://b.alipay.com/support/helperApply.htm?action=consultationApply),提交申请集成协助,我们会有专业的技术工程师主动联系您协助解决
* 2、商户帮助中心(http://help.alipay.com/support/232511-16307/0-16307.htm?sh=Y&info_type=9)
* 3、支付宝论坛(http://club.alipay.com/read-htm-tid-8681712.html)
* 如果不想使用扩展功能请把扩展功能参数赋空值。
*/
require_once('data/api/alipay/alipay.config.php');
require_once('data/api/alipay/lib/alipay_submit.class.php');
/**************************请求参数**************************/
//支付类型
$payment_type = '1';
//必填,不能修改
//服务器异步通知页面路径
$notify_url = $cfg_weburl.$cfg_webpath.'/data/api/alipay/notify_url.php';
//需http://格式的完整路径,不能加?id=123这类自定义参数
//页面跳转同步通知页面路径
$return_url = $cfg_weburl.$cfg_webpath.'/data/api/alipay/return_url.php';
//需http://格式的完整路径,不能加?id=123这类自定义参数,不能写成http://localhost/
//卖家支付宝帐户
$seller_email = $cfg_alipay_uname;
//必填
//商户订单号
$out_trade_no = $row['id'];
//商户网站订单系统中唯一订单号,必填
//订单名称
$subject = $row['username'];
//必填
//付款金额
$total_fee = $row['amount'];
//必填
//订单描述
$body = '';
//商品展示地址
$show_url = $cfg_weburl.$cfg_webpath.'goods.php';
//需以http://开头的完整路径,例如:http://www.xxx.com/myorder.html
//防钓鱼时间戳
$anti_phishing_key = "";
//若要使用请调用类文件submit中的query_timestamp函数
//客户端的IP地址
$exter_invoke_ip = GetIP();
//非局域网的外网IP地址,如:221.0.0.1
/************************************************************/
//构造要请求的参数数组,无需改动
$parameter = array(
"service" => "create_direct_pay_by_user",
"partner" => trim($alipay_config['partner']),
"payment_type" => $payment_type,
"notify_url" => $notify_url,
"return_url" => $return_url,
"seller_email" => $seller_email,
"out_trade_no" => $out_trade_no,
"subject" => $subject,
"total_fee" => $total_fee,
"body" => $body,
"show_url" => $show_url,
"anti_phishing_key" => $anti_phishing_key,
"exter_invoke_ip" => $exter_invoke_ip,
"_input_charset" => trim(strtolower($alipay_config['input_charset']))
);
//建立请求
$alipaySubmit = new AlipaySubmit($alipay_config);
$html_text = $alipaySubmit->buildRequestForm($parameter,"get", "提交中...");
echo $html_text;
?>