userpay.asp
来自「现在好了」· ASP 代码 · 共 970 行 · 第 1/3 页
ASP
970 行
<!--#include file =conn.asp-->
<!-- #include file="inc/const.asp" -->
<!--#include file="inc/chan_const.asp"-->
<!--#include file="inc/md5.asp"-->
<%
Dvbbs.stats="购买论坛点券"
Dvbbs.LoadTemplates("")
Dvbbs.nav()
Dvbbs.Head_var 0,0,"用户控制面板","usermanager.asp"
If Request("action")="alipay_return" Then
AliPay_Return()
Dvbbs.Footer()
Response.End
ElseIf Request("action")="Re_inmoney" Then
Re_inmoney()
Dvbbs.Footer()
Response.End
End If
If Dvbbs.userid=0 Then Dvbbs.AddErrCode(6):Dvbbs.Showerr()
'If (Dvbbs.Forum_ChanSetting(13)="1" And Dvbbs.Forum_ChanSetting(0)="1") And Dvbbs.Forum_ChanSetting(3)="0" Then
' Response.redirect "showerr.asp?ErrCodes=<li>当前论坛没有开启网上支付或手机短信点播兑换点券的服务,请和系统管理员联系。&action=OtherErr"
'End If
CenterMain()
Dvbbs.Showerr()
Dvbbs.Footer()
Sub CenterMain()
'Tools_Nav_Link()
%>
<table border="0" width="<%=Dvbbs.mainsetting(0)%>" cellpadding=2 cellspacing=0 align=center>
<tr>
<td width="180" valign=top>
<%UserInfo()%>
</td>
<td width="*" valign=top>
<%
Select Case Request.QueryString("action")
Case "dsms"
DSms()
Case "Re_Sms"
Re_Sms()
Case "inmoney"
inmoney()
Case "alipay"
AliPay()
Case "alipay_1"
AliPay_1()
Case "alipay_return"
AliPay_Return()
Case "UserCenter"
UserCenter()
Case "UserToolsLog_List"
UserToolsLog_List()
Case "PayList"
PayList()
Case Else
SmsPayMain()
End Select
%>
</td>
</tr>
</table>
<%
End Sub
Sub SmsPayMain()
MainReadMe(0)
If Dvbbs.Forum_ChanSetting(3)="0" Then
%>
<tr><td height=23 class=Tablebody2><B>网络银行支付购买点券</B>:使用前请到 <a href="https://www.alipay.com/" target=_blank><font color=red>阿里巴巴.支付宝</font></a> 申请一个支付宝账号,支付过程不收取手续费</td>
</tr>
<FORM TARGET="_blank" METHOD=POST ACTION="?action=alipay">
<tr><td height=23 class=Tablebody1>
请输入要支付的金额:
<input type=text size=5 name="paymoney" value="2" onkeyup="ShowChange(this.value,this,'PAY_M',2)">
获取<FONT ID="PAY_M" CLASS="REDFONT"><%=Dvbbs.Forum_ChanSetting(14)*2%></FONT>张论坛点券。
(最低 2 元人民币 )
<input type=submit name=submit value="网上支付">
</td>
</tr>
</FORM>
<tr><td height=24 class=Tablebody1>
如果您网上付款成功了而论坛没有得到正确的结果,请到订单管理未成功订单的对应记录中点击<a href="UserPay.asp?action=PayList"><font color=blue>重新获得交易状态</font></a>
</td>
</tr>
<tr><td height=24 class=Tablebody1>
<iframe src="<%=Dvbbs_Server_Url%>dvbbs/DvDefaultTextAd_1.asp" height=23 width="100%" MARGINWIDTH=0 MARGINHEIGHT=0 HSPACE=0 VSPACE=0 FRAMEBORDER=0 SCROLLING=no></iframe>
</td>
</tr>
<%End If%>
<%If Dvbbs.Forum_ChanSetting(13)="1" And Dvbbs.Forum_ChanSetting(0)="1" Then%>
<tr><td height=24 class=Tablebody2><B>手机点播短信获奖点券</B>:手机短信服务由北京阳光加信提供</td>
</tr>
<FORM TARGET="_blank" METHOD=POST ACTION="?action=dsms">
<tr><td height=23 class=Tablebody1>
短信点播,请选择您要点播的资讯类别:
<select name="money" size=1 onchange="getinfo(this.value)">
<option value="2" selected>2元点播</option>
<option value="4">4元点播</option>
<option value="6">6元点播</option>
</select>
赠送 <B><font color=red id=pay style="color:red;"><%=Dvbbs.Forum_ChanSetting(14) * 2%></font></B> 张论坛点券
<input type=submit name=submit value="短信点播">
</td>
</tr>
</FORM>
<FORM METHOD=POST ACTION="?action=inmoney">
<tr><td height=23 class=Tablebody1 style="line-height: 18px">
兑换获奖论坛点券,请输入您收到的点券确认码:
<input type=text size=30 name="SmsCode">
<input type=submit name=submit value="兑换点券"><BR>
<B>温馨提示</B>:多个点券确认码可以使用逗号分隔开一次提交,如:20041030001,20041030002,20041030003
</td>
</tr>
<%End If%>
<tr><td height=23 class=Tablebody2 style="line-height: 18px"><B>点券使用小贴士</B>:<BR>
① 论坛点券可用于购买论坛中出售的各种趣味性道具<BR>
② 论坛点券和金币可用于参与论坛中一些需要点券购买贴的浏览、当您的帖子有人正确回答后赠与回复用户等操作<BR>
③ 各种论坛道具有其不同的功能,比如际遇卡可让目标用户(也可是您自己)随机出现一些际遇(如增减金钱获丢失道具等)<BR>
④ 论坛点券可在论坛用户中相互转让,前提是目标用户必须符合论坛设置以及购买了道具转让器<BR>
⑤ 系统中部分特殊的道具出于限制使用的目的,是需要用户同时拥有金币和点券才能购买的,有部分道具只有在特殊的情况下才会出现,这部分道具是用点券或金币都不能购买到的。</td>
</tr>
</table>
<SCRIPT LANGUAGE="JavaScript">
<!--
var ProductMoney = <%=Dvbbs.Forum_ChanSetting(14)%>;
function getinfo(v){
v=parseFloat(v);
var pag=document.getElementById('pay');
pag.innerHTML=ProductMoney*v;
}
function ShowChange(Ivalue,Iname,ShowID,Min){
if(isNaN(Ivalue)){
Iname.value = Min;
alert('请填写正确的数值!');
}
else{
Ivalue = parseFloat(Ivalue);
Min = parseFloat(Min);
if (Ivalue<Min){
Iname.value = Min;
document.getElementById(ShowID).innerHTML = Min;
alert('填写数值低于限制!');
}
else{
document.getElementById(ShowID).innerHTML = (Ivalue * ProductMoney).toFixed(1);
}
}
}
//-->
</SCRIPT>
<%
End Sub
'短信点播第一次信息提交部分
Sub DSms()
If Request("money")="" Then
Response.redirect "showerr.asp?ErrCodes=<li>非法的订阅参数。&action=OtherErr"
Exit Sub
ElseIf Not IsNumeric(Request("money")) Then
Response.redirect "showerr.asp?ErrCodes=<li>非法的订阅参数。&action=OtherErr"
Exit Sub
ElseIf Cint(Request("money"))<>2 And Cint(Request("money"))<>4 And Cint(Request("money"))<>6 Then
Response.redirect "showerr.asp?ErrCodes=<li>非法的订阅参数。&action=OtherErr"
Exit Sub
End If
Get_ChallengeWord
Dim Rs,UserMobile
Set Rs=dvbbs.execute("select UserMobile,IsChallenge from [dv_user] where UserID="&Dvbbs.UserID)
If Rs.Eof And Rs.Bof Then
Response.redirect "showerr.asp?ErrCodes=<li>您的用户并不存在,请重新登录或注册论坛。&action=OtherErr"
Exit Sub
Else
If Rs("IsChallenge")=0 Then
Response.redirect "showerr.asp?ErrCodes=<li>您还不是本站的阳光会员,不能使用此功能,请<a href=challenge_up.asp>升级为阳光会员</a>。&action=iOtherErr"
Exit Sub
Else
UserMobile = Rs("UserMobile")
End If
End If
Set Rs=Dvbbs.Execute("Select Top 1 * From Dv_ChallengeInfo")
If Rs.Eof And Rs.Bof Then
Response.redirect "showerr.asp?ErrCodes=<li>错误的数据,请联系动网论坛官方解决。&action=OtherErr"
Exit Sub
End If
%>
正在提交数据,请稍后……
<form name="redir" action="<%=Dvbbs_Server_Url%>ray.asp?Action=ToolsPay" method="post">
<INPUT type=hidden name="mobile" value="<%=UserMobile%>">
<INPUT type=hidden name="mouseid" value="<%=Rs("D_UserName")%>">
<INPUT type=hidden name="forumid" value="<%=Rs("D_ForumID")%>">
<INPUT type=hidden name="backurl" value="<%=Dvbbs.Get_ScriptNameUrl%>UserPay.asp?Action=Re_Sms">
<INPUT type=hidden name="money" value="<%=Request("money")%>">
<INPUT type=hidden name="seqno" value="<%=Session("challengeWord")%>">
</form>
<script LANGUAGE=javascript>
<!--
redir.submit();
//-->
</script>
<%
Rs.Close
Set Rs=Nothing
End Sub
'短信点播第一次提交接收信息部分
Sub Re_Sms()
If Request("errorcode")="1" Then
Dim challengeWord_key,retokerWord
challengeWord_key=session("challengeWord_key")
retokerWord=trim(request("token"))
If challengeWord_key=retokerWord Then
%>
<!--论坛操作成功信息-->
<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>成功,请您前往<a href="UserPay.asp">论坛道具中心输入</a>您手机中收到的论坛点券兑换序列号。
</td></tr>
<tr align=center><td width="100%" class=tablebody2>
<a href="UserPay.asp"> << 前往点券兑换</a> || <a href="javascript:window.close()"> 关闭窗口>></a>
</td></tr>
</table><br>
<%
Else
'Response.Write challengeWord_key &"||"&retokerWord
Response.redirect "showerr.asp?ErrCodes=<li>错误,非法的参数。&action=OtherErr"
Exit Sub
End If
Else
Response.redirect "showerr.asp?ErrCodes=<li>错误,"&Request("errormsg")&"。&action=OtherErr"
Exit Sub
End If
Emp_ChallengeWord
End Sub
'短信点播第二次序列号提交部分
Sub inmoney()
If Request("SmsCode")="" Then
Response.redirect "showerr.asp?ErrCodes=<li>请输入正确的点券兑换序列号。&action=OtherErr"
Exit Sub
End If
Get_ChallengeWord
Dim Rs,UserMobile
Set Rs=dvbbs.execute("select UserMobile,IsChallenge from [dv_user] where UserID="&Dvbbs.UserID)
If Rs.Eof And Rs.Bof Then
Response.redirect "showerr.asp?ErrCodes=<li>您的用户并不存在,请重新登录或注册论坛。&action=OtherErr"
Exit Sub
Else
If Rs("IsChallenge")=0 Then
Response.redirect "showerr.asp?ErrCodes=<li>您还不是本站的阳光会员,不能使用此功能,请<a href=challenge_up.asp>升级为阳光会员</a>。&action=iOtherErr"
Exit Sub
Else
UserMobile = Rs("UserMobile")
End If
End If
Set Rs=Dvbbs.Execute("Select Top 1 * From Dv_ChallengeInfo")
If Rs.Eof And Rs.Bof Then
Response.redirect "showerr.asp?ErrCodes=<li>错误的数据,请联系动网论坛官方解决。&action=OtherErr"
Exit Sub
End If
'进入论坛订单库
Dim SmsCode,PayMoney,i
SmsCode = Split(Request("SmsCode"),",")
PayMoney = (Ubound(SmsCode) + 1) * 2
Dvbbs.Execute("InSert Into Dv_ChanOrders (O_type,O_Username,O_isApply,O_issuc,O_PayMoney,O_Paycode,O_AddTime) Values (2,'"&Dvbbs.MemberName&"',0,0,"&PayMoney&",'"&Replace(Session("challengeWord"),"dv","")&"',"&SqlNowString&")")
%>
正在提交数据,如果您的论坛地址设置了URL转发,将不能正确传输信息,请稍后……
<form name="redir" action="<%=Dvbbs_Server_Url%>ray.asp?Action=ToolsInMoney" method="post">
<INPUT type=hidden name="mobile" value="<%=UserMobile%>">
<INPUT type=hidden name="forumid" value="<%=Rs("D_ForumID")%>">
<INPUT type=hidden name="backurl" value="<%=Dvbbs.Get_ScriptNameUrl%>UserPay.asp?Action=Re_inmoney">
<INPUT type=hidden name="seqno" value="<%=Session("challengeWord")%>">
<INPUT type=hidden name="linkid" value="<%=Request("SmsCode")%>">
</form>
<script LANGUAGE=javascript>
<!--
redir.submit();
//-->
</script>
<%
Rs.Close
Set Rs=Nothing
End Sub
'短信点播第二次提交返回部分-充值到账号
Sub Re_inmoney()
If Request("errorcode")<>"1" Then
Response.redirect "showerr.asp?ErrCodes=<li>错误,"&Request("errormsg")&"。&action=OtherErr"
Exit Sub
End If
Dim challengeWord_key,retokerWord,UserInMoney,PayCode
'challengeWord_key=session("challengeWord_key")
retokerWord = Replace(Request("token"),"'","''")
UserInMoney = Request("money")
PayCode = Replace(Request("seqno"),"'","''")
If Not IsNumeric(UserInMoney) Then Response.redirect "showerr.asp?ErrCodes=<li>错误,非法的参数1"&UserInMoney&"。&action=OtherErr"
If Cint(UserInMoney)<0 Then Response.redirect "showerr.asp?ErrCodes=<li>错误,非法的参数2"&UserInMoney&"。&action=OtherErr"
If retokerWord = "" Or PayCode = "" Then Response.redirect "showerr.asp?ErrCodes=<li>错误,非法的参数,"&UserInMoney&","&retokerWord&","&PayCode&"。&action=OtherErr"
PayCode = Replace(Lcase(PayCode),"dv","")
UserInMoney = FormatNumber(UserInMoney,2)
'验证订单信息
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
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?