📄 chinabank_receive.asp
字号:
<!--#include file="../inc/conn.asp"-->
<!--#include file="../inc/func.asp"-->
<%
'该页面为支付完成后获取返回的参数及处理.....
'获取参数
v_oid=request("v_oid")
v_pmode=request("v_pmode")
v_pstatus=request("v_pstatus")
v_pstring=request("v_pstring")
v_md5info=request("v_md5info")
v_amount=request("v_amount")
v_moneytype=request("v_moneytype")
v_md5money=request("v_md5money")
v_md5=request("v_md5")
key="chinabank857860585jbvisdfjwois"
if request("v_md5info")="" then
session("mesg")="v_md5info:空值"
Response.Redirect "../result.asp"
'response.Write("v_md5info:空值")
response.end
end if
'md5校验
text = v_oid&v_pstatus&v_amount&v_moneytype&key
md5text = trim(md5(text))
'按md5检验情况输出结果 Ucase转换为大写
if Ucase(md5text)<>Ucase(v_md5) then
session("mesg")="检验出错"
Response.Redirect "../result.asp"
'response.write("error")
else
'response.write("received")
'或response.write "sent',依据商品物流特征决定。
'提示:仅是对校验码校验通过不表示该支付结果是成功只意味着该信息是由网银传回
'校验成功需对传回的v_pstatus参数做判断,其中1或20都意味着支付成功(只是支付状态分非实时和实时两种),30表示支付失败
'如果商户涉及实时售卡,请对返回的金额与数据库中原始金额做大小判断,以防恶意行为
'操作数据库
'''''''''''''''''''''开始写入数据库''''''''''''''''''''
'如果返回成功,即为客户真实入帐
if v_pstatus=20 then
set rs = conn.execute (" select * from banktransfer where orderid='"& v_oid & "' ")
if rs.eof then
session("mesg")="在线支付入帐失败:未找到转帐记录,请尽快与本公司财务部联系"
Response.Redirect "../result.asp"
'response.write "在线支付入帐失败:未找到转帐记录,请尽快与本公司财务部联系"
response.end
end if
if rs("status") = "正在确认" then
direction = "真实入帐"
remark = "网银转帐,转帐订单号["& v_oid & "]"
username = rs("username")
amount = v_amount
billno = v_oid
rs.close
set rs = nothing
ret = FunManage(direction,username,amount, billno, remark, ErrMsg)
if ret = "0" then
conn.execute ("update banktransfer set status='正常',handletime='" & now() & "', remark='已真实入帐到[" & username & "]' where orderid='" & v_oid & "' ")
session("mesg")="系统为客户["&username&"]做["&direction&"]["&amount&"]成功"
Response.Redirect "../result.asp"
'response.write "系统为客户["&username&"]做["&direction&"]["&amount&"]成功"
else
session("mesg")="系统为客户["&username&"]做["&direction&"]["&amount&"]失败:" & ErrMsg
Response.Redirect "../result.asp"
'response.write "系统为客户["&username&"]做["&direction&"]["&amount&"]失败:" & ErrMsg
end if
else
session("mesg")="该支付订单已入帐成功"
Response.Redirect "../result.asp"
'response.write "该支付订单已入帐成功"
end if
end if
'cn.close
'set cn=nothing
'set rs=nothing
'-----------------------------------------------
'若有错误发生
If Err.Number <> 0 Then
Response.Write "error" & Err.Number & "<br>"
Response.Write "error" & Err.Source & "<br>"
Response.Write "error" & Err.Description & "<br>"
End If
'-----------------------------------------------
'关闭资料库
'-----------------------------------------------
end if
response.end
%>
<!--
以下是打印出所有接收数据的结果,供编程人员参考
-->
<table width="93%" border="0">
<tr>
<td> <p><b><font color="#FF0000">提示:</font> 您网上在线支付情况反馈如下:</b><br>
此次交易编号: <%=v_oid%></p>
<p>
<% if v_pstatus=1 then
zhuangtai = "支付已提交,但已对您的非实时银行卡已经进行扣款 "
%>
支付已提交,但已对您的非实时银行卡已经进行扣款
<%elseif v_pstatus=20 then
zhuangtai = "在线支付已经支付成功"
%>
在线支付已经支付成功
<%elseif v_pstatus=30 then
zhuangtai = "在线支付失败!"
%>
在线支付失败!
<%end if%>
</p>
<p> 支付代码号:<%=v_pstatus%><br>
<br>
在线支付结果:<%=v_pstring%> </p>
<p> 您所使用的卡为:<%=v_pmode%></p>
<p>发生额:<%=v_amount%></p>
</p></td>
</tr>
</table>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -