📄 userpay.asp
字号:
<INPUT type=hidden name="price" value="<%=PayMoney%>">
<INPUT type=hidden name="ac" value="<%=EnCodeStr%>">
<INPUT type=hidden name="subject" value="购买点券">
<INPUT type=hidden name="body" value="购买论坛点券">
<INPUT type=hidden name="type" value="1">
<INPUT type=hidden name="number" value="1">
<INPUT type=hidden name="transport" value="1">
<INPUT type=hidden name="readonly" value="true">
<INPUT type=hidden name="cmdno" value="11">
<INPUT type=hidden name="partner" value="2088002048522272">
<INPUT type=hidden name="seller" value="<%=Lcase(Dvbbs.Forum_ChanSetting(4))%>">
</form>
<script LANGUAGE=javascript>
<!--
redir.submit();
//-->
</script>
<%
End If
End Sub
'msg_id,order_no,gross,buyer_email,buyer_name,buyer_address,buyer_zipcode,buyer_tel,buyer_mobile,action,date
'pay.dvbbs.net/top.asp?msg_id=8b63d5ddb43677c2e2fda715aee35517&order_no=2005091115595084464&gross=1.00&buyer_email=xxx%40msn.com&buyer_name=xxx&buyer_address=dvbbs&buyer_zipcode=123456&buyer_tel=&buyer_mobile=&action=sendOff&date=20050911155809&ac=64bc1914702b5fa2897874a916df28fc
'md5(URLDecode("msg_id8b63d5ddb43677c2e2fda715aee35517order_no2005091115595084464gross1.00buyer_emaildvshatan%40msn.combuyer_name%CB%CE%BA%A3%B2%A8buyer_addressdvbbsbuyer_zipcode123456buyer_telbuyer_mobileactionsendOffdate20050911155809")&Dvbbs.Forum_ChanSetting(6),32)
'在线支付返回结果处理,不登陆也可执行
Sub AliPay_Return()
If Dvbbs.Forum_ChanSetting(5) <> "0" Then
AliPay_Return_Old()
Else
Response.Clear
Dim Rs,Order_No,EnCodeStr,UserInMoney
Order_No = Dvbbs.CheckStr(Request("order_no"))
Set Rs = Dvbbs.Execute("Select * From Dv_ChanOrders Where O_IsSuc=0 And O_PayCode = '"&Order_No&"'")
If Rs.Eof And Rs.Bof Then
Response.Write "N"
Else
EnCodeStr = "msg_id"&Request("msg_id")&"order_no"&Order_No&"gross"&FormatNumber(Rs("O_PayMoney"),2)&"buyer_email"&Request("buyer_email")&"buyer_name"&Request("buyer_name")&"buyer_address"&Request("buyer_address")&"buyer_zipcode"&Request("buyer_zipcode")&"buyer_tel"&Request("buyer_tel")&"buyer_mobile"&Request("buyer_mobile")&"action"&Request("action")&"date"&Request("date")&""
EnCodeStr = EnCodeStr & Dvbbs.Forum_ChanSetting(6)
EnCodeStr = URLDecode(EnCodeStr)
EnCodeStr = Md5(EnCodeStr,32)
If EnCodeStr = Trim(Request("ac")) Then
Response.Write "Y"
'更新数据库资料
UserInMoney = Rs("O_PayMoney")
'更新用户资料
Dvbbs.Execute("Update Dv_User Set UserTicket = UserTicket + " & Dvbbs.Forum_ChanSetting(14) * UserInMoney & " Where UserName='"&Rs("O_UserName")&"'")
If Dvbbs.UserID > 0 And Lcase(Dvbbs.MemberName)=Lcase(Rs("O_UserName")) Then
Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userticket").text=CCur(Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userticket").text) + cCur(Dvbbs.Forum_ChanSetting(14) * UserInMoney)
End If
'更新订单状态
Dvbbs.Execute("Update Dv_ChanOrders Set O_IsSuc=1 Where O_ID = " & Rs("O_ID"))
Else
Response.Write "N"
End If
End If
Response.End
End If
End Sub
Sub AliPay_Return_Old()
'得到和判断返回参数
Dim PayCode,SignStr,Success,UserInMoney
PayCode = Replace(Request("paycode"),"'","")
SignStr = Replace(Request("sign"),"'","")
Success = Request("success")
If PayCode = "" Or SignStr = "" Or Success = "" Or Not IsNumeric(Success) Then
Response.redirect "showerr.asp?ErrCodes=<li>错误,非法的订单参数。&action=OtherErr"
Exit Sub
End If
If Cint(Success) = 0 Then
Response.redirect "showerr.asp?ErrCodes=<li>订单支付失败,请详细检查您的支付信息,<a href=""UserPay.asp"">重新进入支付页面</a>。&action=iOtherErr"
Exit Sub
End If
'验证订单信息
Dim Rs
Set Rs = Dvbbs.Execute("Select * From Dv_ChanOrders Where O_IsSuc=0 And O_PayCode = '"&PayCode&"'")
If Rs.Eof And Rs.Bof Then
Response.redirect "showerr.asp?ErrCodes=<li>错误,找不到该订单信息或该订单已支付成功。&action=OtherErr"
Exit Sub
Else
'加密字符串验证
'重新生成加密字符串对照返回加密字符串
Dim PayCodeEnCode
PayCodeEnCode = Md5(Rs("O_PayCode") & ":" & Success & ":" & Rs("O_PayMoney") & ":" & Dvbbs.Forum_ChanSetting(6),32)
'Response.Write SignStr
'Response.Write "<BR>"
'Response.Write PayCodeEncode
'response.end
If PayCodeEncode <> SignStr Then
Response.redirect "showerr.asp?ErrCodes=<li>错误,订单校验失败。如银行支付已成功,请到未成功订单中找到该订单并选择重新获取结果。&action=OtherErr"
Exit Sub
End If
'更新数据库资料
UserInMoney = Rs("O_PayMoney")
'更新用户资料
Dvbbs.Execute("Update Dv_User Set UserTicket = UserTicket + " & Dvbbs.Forum_ChanSetting(14) * UserInMoney & " Where UserName='"&Rs("O_UserName")&"'")
If Dvbbs.UserID > 0 And Lcase(Dvbbs.MemberName)=Lcase(Rs("O_UserName")) Then
Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userticket").text=CCur(Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userticket").text) + cCur(Dvbbs.Forum_ChanSetting(14) * UserInMoney)
End If
'更新订单状态
Dvbbs.Execute("Update Dv_ChanOrders Set O_IsSuc=1 Where O_ID = " & Rs("O_ID"))
End If
Rs.Close
Set Rs=Nothing
%>
<!--论坛操作成功信息-->
<br>
<table cellpadding=3 cellspacing=1 align=center class=tableborder1 style="width:75%">
<tr align=center>
<th width="100%">论坛成功信息
</td>
</tr>
<tr>
<td width="100%" class=tablebody1>
<b>操作成功:</b><br><br>
<li>成功,您本次兑换了 <B><font color=red><%=(Dvbbs.Forum_ChanSetting(14) * UserInMoney)%></font></B> 张论坛点券。
</td></tr>
<tr align=center><td width="100%" class=tablebody2>
<a href="usermanager.asp"> << 返回用户控制面板</a> || <a href="UserPay.asp?action=UserCenter"> 去把点券转换成论坛金币>></a>
</td></tr>
</table><br>
<%
End Sub
'--------------------------------------------------------------------------------
'用户信息
'--------------------------------------------------------------------------------
Sub UserInfo()
Dim Sql,Rs,UserToolsCount
'Sql = "Select Sum(ToolsCount) From [Dv_Plus_Tools_Buss] where UserID="& Dvbbs.UserID
'Set Rs = Dvbbs.Plus_Execute(Sql)
'UserToolsCount = Rs(0)
'If IsNull(UserToolsCount) Then UserToolsCount = 0
%>
<table border="0" cellpadding=3 cellspacing=1 align=center class=Tableborder1 Style="Width:100%">
<tr>
<th height=23 >个人资料</th>
</tr>
<tr>
<td align=center class=TableBody1>
<table border="0" cellpadding=3 cellspacing=1 align=center Style="Width:90%">
<tr><td class=TableBody2>金币:<B><font color="<%=Dvbbs.mainsetting(1)%>"><%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@usermoney").text %></font></B> 个</td></tr>
<tr><td class=TableBody1>点券:<B><font color="<%=Dvbbs.mainsetting(1)%>"><%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userticket").text%></font></B> 张</td></tr>
<tr><td class=TableBody2>金钱:<%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userwealth").text%></td></tr>
<tr><td class=TableBody1>文章:<%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userpost").text%></td></tr>
<tr><td class=TableBody2>经验:<%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userep").text%></td></tr>
<tr><td class=TableBody1>魅力:<%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@usercp").text%></td></tr>
<tr><td class=TableBody2>威望:<%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userpower").text%></td></tr>
<tr><td class=TableBody1></td></tr>
</table>
</td>
</tr>
</table>
<%
End Sub
'--------------------------------------------------------------------------------
'金币转换
'--------------------------------------------------------------------------------
Sub UserCenter()
If Request("react") = "Savechange" Then
If Not Dvbbs.ChkPost() Then Dvbbs.AddErrCode(16):Dvbbs.Showerr()
Dim userWealth,userep,usercp,userticket,UpUserMoney
Dim Sql,Rs
userWealth = Dvbbs.CheckNumeric(Request.Form("userWealth"))
userep = Dvbbs.CheckNumeric(Request.Form("userep"))
usercp = Dvbbs.CheckNumeric(Request.Form("usercp"))
userticket = Dvbbs.CheckNumeric(Request.Form("userticket"))
UpUserMoney = 0
If userWealth<0 or userep<0 or usercp<0 or userticket<0 Then Dvbbs.AddErrCode(35):Dvbbs.Showerr()
If userWealth>=1 and userWealth<=CCur(Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userwealth").text) and cCur(Dvbbs.Forum_setting(93))<>0 Then
If Cint(userWealth / cCur(Dvbbs.Forum_setting(93))) > 0 Then
UpUserMoney = UpUserMoney + Cint(userWealth / cCur(Dvbbs.Forum_setting(93)))
userWealth = Cint(userWealth / cCur(Dvbbs.Forum_setting(93))) * cCur(Dvbbs.Forum_setting(93))
Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userwealth").text = cCur(Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userwealth").text) - userWealth
Else
userWealth = 0
End If
Else
userWealth = 0
End If
If userep>=1 and userep<=cCur(Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userep").text) and cCur(Dvbbs.Forum_setting(94))<>0 Then
If Cint(userep / cCur(Dvbbs.Forum_setting(94))) > 0 Then
UpUserMoney = UpUserMoney + Cint(userep / cCur(Dvbbs.Forum_setting(94)))
userep = Cint(userep / cCur(Dvbbs.Forum_setting(94))) * cCur(Dvbbs.Forum_setting(94))
Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userep").text = cCur(Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userep").text) - userep
Else
userep = 0
End If
Else
userep = 0
End If
If usercp>=1 and usercp<=cCur(Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@usercp").text) and cCur(Dvbbs.Forum_setting(95))<>0 Then
If Cint(usercp / cCur(Dvbbs.Forum_setting(95))) > 0 Then
UpUserMoney = UpUserMoney + Cint(usercp / cCur(Dvbbs.Forum_setting(95)))
usercp = Cint(usercp / cCur(Dvbbs.Forum_setting(95))) * cCur(Dvbbs.Forum_setting(95))
Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@usercp").text = cCur(Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@usercp").text) - usercp
Else
usercp = 0
End If
Else
usercp = 0
End If
If userticket>=1 and userticket<=cCur(Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userticket").text) and Dvbbs.Forum_setting(96) <> 0 Then
Userticket = Clng(Userticket)
If Cint(userticket / Dvbbs.Forum_setting(96)) > 0 Then
UpUserMoney = UpUserMoney + Cint(userticket / Dvbbs.Forum_setting(96))
userticket = Cint(userticket / Dvbbs.Forum_setting(96)) * Dvbbs.Forum_setting(96)
Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userticket").text = cCur(Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userticket").text) - userticket
Else
userticket = 0
End If
Else
userticket = 0
End If
If UpUserMoney < 1 Then
Response.redirect "showerr.asp?ErrCodes=<li>请填写转换的数据或获得的金币数太少!&action=OtherErr"
Else
Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@usermoney").text = cCur(Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@usermoney").text ) + UpUserMoney
Sql = "Update Dv_user set userWealth = "&Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userwealth").text&",userEP="&Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userep").text&",userCP="&Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@usercp").text&",UserMoney="&Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@usermoney").text &",UserTicket="&Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userticket").text&" where UserID="&Dvbbs.UserID
Dvbbs.Execute(Sql)
Dim LogMsg
LogMsg = "金币转换成功,获得总金币数为<b>"&UpUserMoney&"</b>,金钱减少<b>"&userWealth&"</b>,经验减少<b>"&userep&"</b>,魅力减少<b>"&usercp&"</b>,点券减少<b>"&userticket&"</b>。"
'Call Dvbbs.ToolsLog(0,0,0,0,0,LogMsg,Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@usermoney").text &"|"&Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userticket").text)
Dvbbs.Dvbbs_Suc(LogMsg)
End If
Else
%>
<table border=0 cellpadding=3 cellspacing=1 class=Tableborder1 align=center style="width:100%">
<tr><th height=20 colspan="5">论坛金币转换</th></tr>
<tr><td height=20 colspan="5" class=Tablebody1><li>允许用户将金钱、经验、魅力、点券转换成金币。</td></tr>
<tr>
<th width="30%" height="20">金币转换汇率</th>
<th width="15%">转换项目</th>
<th width="20%">转换信息</th>
<th width="15%">转换设置</th>
<th width="20%">转换所得金币</th>
</tr>
<form action="UserPay.asp?action=UserCenter&react=Savechange" method=post NAME=CenterForm>
<tr>
<td rowspan="5" class=Tablebody1>
<table border="0" cellpadding=3 cellspacing=1 align=center Style="Width:90%">
<tr><td class=TableBody1> <a href="UserPay.asp"><font color=red>前往购买论坛点券</font></a></td></tr>
<tr><td class=TableBody2> <b><font class=redfont>1</font> 金币 = <font class=redfont><%=Dvbbs.Forum_setting(93)%></font> 金钱</b></td></tr>
<tr><td class=TableBody1> <b><font class=redfont>1</font> 金币 = <font class=redfont><%=Dvbbs.Forum_setting(94)%></font> 经验</b></td></tr>
<tr><td class=TableBody2> <b><font class=redfont>1</font> 金币 = <font class=redfont><%=Dvbbs.Forum_setting(95)%></font> 魅力</b></td></tr>
<tr><td class=TableBody1> <b><font class=redfont>1</font> 金币 = <font class=redfont><%=Dvbbs.Forum_setting(96)%></font> 点券</b></td></tr>
<tr><td class=TableBody2></td></tr>
</table>
</td>
<td class=Tablebody2 align=center>拥有金钱值:</td>
<td class=Tablebody1><font class=redfont><%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userwealth").text%></font></td>
<td class=Tablebody1><INPUT TYPE="text" NAME="userWealth" value="0" onkeyup="ShowChange(this.value,this,'Show_Money',<%=Dvbbs.Forum_setting(93)%>,<%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userwealth").text%>)"></td>
<td class=Tablebody1 ID=Show_Money>0</td>
</tr>
<tr>
<td class=Tablebody2 align=center>拥有经验值:</td>
<td class=Tablebody1><font class=redfont><%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userep").text%></font></td>
<td class=Tablebody1><INPUT TYPE="text" NAME="userep" value="0" onkeyup="ShowChange(this.value,this,'Show_EP',<%=Dvbbs.Forum_setting(94)%>,<%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userep").text%>)"></td>
<td class=Tablebody1 ID=Show_EP>0</td>
</tr>
<tr>
<td class=Tablebody2 align=center>拥有魅力值:</td>
<td class=Tablebody1><font class=redfont><%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@usercp").text%></font></td>
<td class=Tablebody1><INPUT TYPE="text" NAME="usercp" value="0" onkeyup="ShowChange(this.value,this,'Show_CP',<%=Dvbbs.Forum_setting(95)%>,<%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@usercp").text%>)"></td>
<td class=Tablebody1 ID=Show_CP>0</td>
</tr>
<tr>
<td class=Tablebody2 align=center>拥有点券值:</td>
<td class=Tablebody1><font class=redfont><%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userticket").text%></font></td>
<td class=Tablebody1><INPUT TYPE="text" NAME="userticket" value="0" onkeyup="ShowChange(this.value,this,'Show_Ticket',<%=Dvbbs.Forum_setting(96)%>,<%=Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@userticket").text%>)"></td>
<td class=Tablebody1 ID=Show_Ticket>0</td>
</tr>
<tr>
<td class=Tablebody2 align=center colspan="4">
<INPUT TYPE="submit" value="确定转换"> <INPUT TYPE="reset" value="重新设置"></td>
</tr>
</form>
</table>
<SCRIPT LANGUAGE="JavaScript">
<!--
function ShowChange(Ivalue,Iname,ShowID,Sys,User){
if(isNaN(Ivalue)){
Iname.value = 0;
alert('请填写正确的数值!');
}
else{
Ivalue = parseFloat(Ivalue);
Sys = parseFloat(Sys);
User = parseFloat(User);
if (Ivalue>User||Ivalue<0){
Iname.value = 0;
document.getElementById(ShowID).innerHTML = 0;
alert('填写数值超过限制!');
}
else{
document.getElementById(ShowID).innerHTML = (Ivalue / Sys).toFixed(1);
}
}
}
//-->
</SCRIPT>
<%
End If
End Sub
'用户订单列表
Sub PayList()
Dim Success
Success = Dvbbs.CheckNumeric(Request("Suc"))
Dim Page,MaxRows,Endpage,CountNum,PageSearch,SqlString
PageSearch = "action=PayList&Suc=" & Success
Endpage = 0
MaxRows = 20
Page = Request("Page")
If IsNumeric(Page) = 0 or Page="" Then Page=1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -