专业网站建设品牌,17年专业建站经验,服务6000+客户--广州松河
免费热线:400-963-0016
微信咨询
|
联系我们
扫二维码关注公众号
网站首页
网站建设
短视频
网站推广
网站模板
客户案例
资讯动态
关于我们
网站首页
网站建设
短视频
网站推广
网站模板
客户案例
资讯动态
关于我们
位置:
广州松河
>
技术支持
> asp支付宝主动通知调用的页面(通知页)
asp支付宝主动通知调用的页面(通知页)
来源:网络整理 时间:2023/2/14 0:13:56 共
3635
浏览
<
%
'功能:支付宝主动通知调用的页面(通知页)
'版本:
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
%
>
版权说明:
本网站凡注明“广州松河 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
相关主题:
东莞外贸网站如何建设
恶魔网站建设素材图片高清
云阳县的网站建设
寮步麻涌网站建设
精品课网站建设情况
慈溪工装网站建设项目
丰都民宿网站建设招标
璧山网站建设口碑公司
宁波响应式网站建设推荐
南昌医院网站建设费用清单
·上一条:
paypal集成到自己购物网站,支付成功,notify_url调用正常,INVALID状态获取成功,但是return页面需要手工点击按钮才能返回自己网站,怎么自动跳回?
|
·下一条:
用ASP接收Paypal的notify_url通知“偶尔”出错
同类资讯
我的世界116的新金属是什么_java
jn是几月的缩写_java
众多显示器我们应该怎么选_java
学习Python语言_java
弱电主管面试常见问题_java
像软通动力文思创新的外包公司_java
推箱子165关怎么过_java
哥德巴赫猜想1_java
微信自助解封怎么更改好友验证码_java
美团社招面试几天能出结果_java
有必要现在去学个软件测试吗_java
JAVA软件开发应届毕业生在北京找工作难么_java
c语言的循环嵌套是先运行最里面的循环在依次往外循环_java
可以直接学习APP开发吗_java
不方便查看怎么办_java
英语必修八第三单元单词_java
什么叫真锅咖啡啊_java
30岁转行做程序员可行吗_java
联想小新pad11能编程吗_java
matlab可执行程序运行不了_java
资讯动态
公司新闻
互联网资讯
电商资讯
优化推广
技术支持
关于我们
公司简介
企业文化
服务项目
公司新闻
服务项目
网站建设
网站推广
品牌策划
移动应用
服务支持
在线咨询
服务流程
产品报价
售后服务
联系我们
代理加盟
付款方式
在线留言
联系方式
联系方式
电话:400-963-0016
邮箱:sales@itwy.com
QQ:250211130
微信:18520775521
Copyright © 广州松河信息科技有限公司 2005-2025 版权所有
粤ICP备16019765号
广州松河信息科技有限公司 版权所有
18520775521
QQ洽谈
sales@itwy.com