专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016
微信咨询
|
联系我们
扫二维码关注公众号
网站首页
网站建设
短视频
网站推广
网站模板
客户案例
资讯动态
关于我们
网站首页
网站建设
短视频
网站推广
网站模板
客户案例
资讯动态
关于我们
asp支付宝主动通知调用的页面(通知页)
当前位置:
网站建设
>
技术支持
asp支付宝主动通知调用的页面(通知页)
资料来源:网络整理
时间:
2023/2/14 0:13:56
共计:
3607
浏览
<
%
'功能:支付宝主动通知调用的页面(通知页)
'版本:
3.0
'日期:
2010
-06
-25
'说明:
'以下代码只是为了方便商户测试而提供的样例代码,商户可以根据自己网站的需要,按照技术文档编写,并非一定要使用该代码。
'该代码仅供学习和研究支付宝接口使用,只是提供一个参考。
''
''
''
''
''
''
页面功能说明
''
''
''
''
''
''
''
''
''
'
'创建该页面文件时,请留心该页面文件中无任何
HTML
代码及空格。
'该页面不能在本机电脑测试,请到服务器上做测试。请确保外部可以访问该页面。
'该页面调试工具请使用写文本函数log_result,该函数已被默认开启,见alipay_notify.
asp
中的函数notify_verify
'
WAIT_BUYER_PAY
(表示买家已在支付宝交易管理中产生了交易记录,但没有付款);
'
WAIT_SELLER_SEND_GOODS
(表示买家已在支付宝交易管理中产生了交易记录且付款成功,但卖家没有发货);
'
WAIT_BUYER_CONFIRM_GOODS
(表示卖家已经发了货,但买家还没有做确认收货的操作);
'
TRADE_FINISHED
(表示买家已经确认收货,这笔交易完成);
'该通知页面主要功能是:对于返回页面(return_url.
asp
)做补单处理。如果没有收到该页面返回的 success 信息,支付宝会在
24
小时内按一定的时间策略重发通知
''
''
''
''
''
''
''
''
''
''
''
''
''
''
''
''
''
''
''
''
''
'
%
>
<
!
-
-
#include file
=
"../../conn.asp"
-
-
>
<
!
-
-
#include file
=
"../../config.asp"
-
-
>
<
!
-
-
#include file
=
"alipay/Alipay_md5.asp"
-
-
>
<
%
dim opayid
opayid
=
1
set
rs
=
server.
CreateObject
(
"adodb.recordset"
)
rs.
open
"select opayid,opayname,opaypassword,opayrturl,opayparter from sdx_opay where opayid="
&
opayid,conn,
1
,
1
payid
=
rs
(
"opayname"
)
paypwd
=
rs
(
"opaypassword"
)
payurl
=
"http://"
&
Request
.
ServerVariables
(
"HTTP_HOST"
)
&
"/"
&
rs
(
"opayrturl"
)
payparter
=
rs
(
"opayparter"
)
rs.
close
set
rs
=
nothing
%
>
<
%
'计算得出通知验证结果
verify_result
=
notify_verify
()
if
verify_result then '验证成功
'获取支付宝的通知返回参数
order_no
=
request.
Form
(
"out_trade_no"
) '获取订单号
total_fee
=
request.
Form
(
"price"
) '获取总金额
sOld_trade_status
=
2
'获取商户数据库中查询得到该笔交易当前的交易状态
'假设:
'sOld_trade_status
=
"0"
表示订单未处理;
'sOld_trade_status
=
"1"
表示买家已在支付宝交易管理中产生了交易记录,但没有付款
'sOld_trade_status
=
"2"
表示买家已在支付宝交易管理中产生了交易记录且付款成功,但卖家没有发货
'sOld_trade_status
=
"3"
表示卖家已经发了货,但买家还没有做确认收货的操作
'sOld_trade_status
=
"4"
表示买家已经确认收货,这笔交易完成
if
request.
Form
(
"trade_status"
)
=
"WAIT_BUYER_PAY"
then
'表示买家已在支付宝交易管理中产生了交易记录,但没有付款
'放入订单交易完成后的数据库更新程序代码,请务必保证response.
Write
出来的信息只有success
'为了保证不被重复调用,或重复执行数据库更新程序,请判断该笔交易状态是否是订单未处理状态
'注:该交易状态下,也可不做数据库更新程序,此时,建议把该状态的通知信息记录到商户通知日志数据库表中。
if
sOld_trade_status
=
0
then
'根据订单号更新订单,把订单处理成交易成功
end
if
response.
Write
"success"
'请不要修改或删除
'调试用,写文本函数记录程序运行情况是否正常
'
log_result
(
"这里写入想要调试的代码变量值,或其他运行的结果记录"
)
elseif request.
Form
(
"trade_status"
)
=
"WAIT_SELLER_SEND_GOODS"
then
'表示买家已在支付宝交易管理中产生了交易记录且付款成功,但卖家没有发货
'放入订单交易完成后的数据库更新程序代码,请务必保证response.
Write
出来的信息只有success
'为了保证不被重复调用,或重复执行数据库更新程序,请判断该笔交易状态是否是
WAIT_BUYER_PAY
状态
if
sOld_trade_status
=
1
or sOld_trade_status
=
0
then
'根据订单号更新订单,把订单处理成交易成功
end
if
response.
Write
"success"
'请不要修改或删除
'调试用,写文本函数记录程序运行情况是否正常
'
log_result
(
"这里写入想要调试的代码变量值,或其他运行的结果记录"
)
set
rs
=
server.
CreateObject
(
"adodb.recordset"
)
rs.
Open
"select state,score,id,productnum from orders where goods='"
&
order_no
&
"'"
,conn,
1
,
3
if
rs.
eof
and rs.
bof
then
strnetpayresult1
=
"支付订单号有错,请联系商家!"
else
do
while
not rs.
EOF
rs
(
"state"
)
=
3
rs.
Update
rs.
MoveNext
loop
end
if
rs.
Close
set
rs
=
nothing
elseif request.
Form
(
"trade_status"
)
=
"WAIT_BUYER_CONFIRM_GOODS"
then
'表示卖家已经发了货,但买家还没有做确认收货的操作
'放入订单交易完成后的数据库更新程序代码,请务必保证response.
Write
出来的信息只有success
'为了保证不被重复调用,或重复执行数据库更新程序,请判断该笔交易状态是否是
WAIT_SELLER_SEND_GOODS
状态
if
sOld_trade_status
=
2
then
'根据订单号更新订单,把订单处理成交易成功
end
if
response.
Write
"success"
'请不要修改或删除
'调试用,写文本函数记录程序运行情况是否正常
'
log_result
(
"这里写入想要调试的代码变量值,或其他运行的结果记录"
)
set
rs
=
server.
CreateObject
(
"adodb.recordset"
)
rs.
Open
"select state,score,id,productnum from orders where goods='"
&
order_no
&
"'"
,conn,
1
,
3
if
rs.
eof
and rs.
bof
then
strnetpayresult1
=
"支付订单号有错,请联系商家!"
else
do
while
not rs.
EOF
rs
(
"state"
)
=
4
rs.
Update
rs.
MoveNext
loop
end
if
rs.
Close
set
rs
=
nothing
elseif request.
Form
(
"trade_status"
)
=
"TRADE_FINISHED"
then
'表示买家已经确认收货,这笔交易完成
'放入订单交易完成后的数据库更新程序代码,请务必保证response.
Write
出来的信息只有success
'为了保证不被重复调用,或重复执行数据库更新程序,请判断该笔交易状态是否是
WAIT_BUYER_CONFIRM_GOODS
状态
if
sOld_trade_status
=
3
then
'根据订单号更新订单,把订单处理成交易成功
end
if
response.
Write
"success"
'请不要修改或删除
'调试用,写文本函数记录程序运行情况是否正常
'
log_result
(
"这里写入想要调试的代码变量值,或其他运行的结果记录"
)
set
rs
=
server.
CreateObject
(
"adodb.recordset"
)
rs.
Open
"select state,score,id,productnum from orders where goods='"
&
order_no
&
"'"
,conn,
1
,
3
if
rs.
eof
and rs.
bof
then
strnetpayresult1
=
"支付订单号有错,请联系商家!"
else
do
while
not rs.
EOF
rs
(
"state"
)
=
5
rs.
Update
rs.
MoveNext
loop
end
if
rs.
Close
set
rs
=
nothing
else
response.
Write
"success"
'其他状态判断。普通即时到帐中,其他状态不用判断,直接打印success。
'调试用,写文本函数记录程序运行情况是否正常
'
log_result
(
"这里写入想要调试的代码变量值,或其他运行的结果记录"
)
set
rs
=
server.
CreateObject
(
"adodb.recordset"
)
rs.
Open
"select state,score,id,productnum from orders where goods='"
&
order_no
&
"'"
,conn,
1
,
3
if
rs.
eof
and rs.
bof
then
strnetpayresult1
=
"支付订单号有错,请联系商家!"
else
do
while
not rs.
EOF
rs
(
"state"
)
=
3
rs.
Update
rs.
MoveNext
loop
end
if
rs.
Close
set
rs
=
nothing
end
if
else
'验证失败
response.
Write
"fail"
'调试用,写文本函数记录程序运行情况是否正常
'
log_result
(
"这里写入想要调试的代码变量值,或其他运行的结果记录"
)
end
if
%
>
版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
相关主题:
网页设计子网
基于网页设计
method网页设计
刘斌网页设计
双语网页设计
脑筋网页设计
兴宁网页设计
网页分行设计
网页设计元件
网页设计协同
·上一条:
paypal集成到自己购物网站,支付成功,notify_url调用正常,INVALID状态获取成功,但是return页面需要手工点击按钮才能返回自己网站,怎么自动跳回?
|
·下一条:
用ASP接收Paypal的notify_url通知“偶尔”出错
同类资讯
paypal集成到自己购物网站,支付成功,notify_url调用正常,
Paypal的IPN示例
paypal申请身份标记,用于网站集成paypal支付接口
ASP如何集成paypal的方法,整够了,才整出来
在ASP临时表操作的一些见解
SQL Server 跨服务器连接的多种方法
Jquery AJAX 超时问题 timeout
Jquery AJAX 超时问题 timeout
JQuery 淡出、 动画、显示/隐藏切换等效果
jQuery动画animate方法使用介绍
css3中transition hover中的书写顺序差异
css3动画属性系列之transform细讲scale缩放
PayPal付款页面添加公司标识
sql 的一种复合查询方法 allitem
SQL Server的 排序规则(collation)冲突和解决方案
jquery easyui datagrid pageNumber 设置
jquery easyui datagrid 分页 详解
人民币金额转大写程序 JavaScript版
JS中window.open全屏
服务器提交了协议冲突. Section=ResponseHeader D
资讯动态
公司新闻
互联网资讯
电商资讯
优化推广
技术支持
关于我们
公司简介
企业文化
服务项目
公司新闻
服务项目
网站建设
网站推广
品牌策划
移动应用
服务支持
在线咨询
服务流程
产品报价
售后服务
联系我们
代理加盟
付款方式
在线留言
联系方式
联系方式
电话:400-683-0016
邮箱:sales@gzit.cn
QQ:250211130
微信:18520775521
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有
粤ICP备16019765号
广州京杭网络科技有限公司 版权所有
返回顶部
400-683-0016
在线咨询
微信二维码