📄 func.asp
字号:
End Function
'获得用户的管理用户名
Function get_manageuser(UserName)
get_manageuser = lqhm.get_manageuser(UserName)
End Function
'判断用户是否为特殊代理
Function IsAgent(UserName)
'IsAgent = lqhm.IsAgent(UserName)
Set rsp_gm = Server.CreateObject("adodb.recordset")
sql = "select * from [user] where username='" & UserName & "' and (menu in (select groupcode from usergroup where isagent='Y'))"
rsp_gm.Open sql, conn, 1, 1
If rsp_gm.EOF Then
IsAgent = "N"
Else
IsAgent = "Y"
End If
rsp_gm.Close
Set rsp_gm = Nothing
End Function
'获得特殊代理列表
function GetAgentList()
GetAgentList = lqhm.GetAgentList()
end function
'生成唯一ID号
Function CreateUID(Code_i, Name)
CreateUID = lqhm.CreateUID(Code_i, Name)
End Function
'判断ID是否重复
FUnction CheckUID(TableName, IDName, IDValue)
CheckUID = lqhm.CheckUID(TableName, IDName, IDValue)
End Function
'判断当前用户是否用该业务的操作权限
Function IsMOrder(ID, OrderType)
IsMOrder = lqhm.sMOrder(ID, OrderType)
end Function
'以下是域名在线查询代码
'################################################################################################
'域名查询,1:未注册, 2,已注册, 其它:出错
Function check_domain_fun(domain, ext1, ext2, URL_i)
check_domain_fun = lqhm.check_domain_fun(domain, ext1, ext2, URL_i)
exit function
domainT = domain
if ext1 <> "" then domainT = domainT & "." & ext1
if ext2 <> "" then domainT = domainT & "." & ext2
'提交域名实时注册
select case session("DomainOnLineReg")
case "1"
ret = ZPAPI_changeCheck(domainT, session("DomainOnLineRegUser"),session("DomainOnLineRegPass"),ErrMsg)
case "2"
ret = WebCCCheckDomain(domainT,session("DomainOnLineRegUser"),session("DomainOnLineRegPass"),ErrMsg)
case "3"
ret = xwCheckDomain(domainT,session("DomainOnLineRegUser"),session("DomainOnLineRegPass"),ErrMsg)
case "4"
ret = XwhlDomainCheck(domainT,session("DomainOnLineRegUser"),session("DomainOnLineRegPass"),ErrMsg)
case else
ret = "0"
end select
if ret = "0" then
check_domain_fun = "1"
elseif ret = "1" then
check_domain_fun = "2"
else
check_domain_fun = ErrMsg
end if
End Function
Function SplitURL(URL_i, URL, uReg, Reg, M, Whois)
SplitURL = lqhm.SplitURL(URL_i, URL, uReg, Reg, M, Whois)
End Function
'获得网页的内容
'################################################################################################
'获得网页内容,把URL分割成地址和参数两部分提交
Function GetDataFromURL_2(URL, M)
GetDataFromURL_2 = lqhm.GetDataFromURL_2(URL, M)
End Function
'获得网页内容
Function GetDataFromURL(URL, M)
GetDataFromURL = lqhm.GetDataFromURL(URL, M)
End Function
Function URLEncoding(vstrIn)
URLEncoding = lqhm.URLEncoding(vstrIn)
End Function
Function bytes2BSTR(vIn)
bytes2BSTR = lqhm.bytes2BSTR(vIn)
End Function
'提交客户请求
'#####################################################################################################
Sub put_apply(UserName, domainname, action)
call lqhm.put_apply(UserName, domainname, action)
End Sub
'发送邮件
'##############################################################################################################
Sub SplitEmail(intstr, Title, Body)
call lqhm.SplitEmail(intstr, Title, Body)
End Sub
Function SendEMail(EMail, EmailSet)
'SendEMail = lqhm.SendEMail(EMail, EmailSet)
set RsMailSet = conn.execute ("select * from mailCfg where CfgName like 'SysCfg%'")
do while not RsMailSet.eof
if RsMailSet("CfgName") = "SysCfg-RecvMailBox" then SysCfg_RecvMailBox = RsMailSet("CfgBody")
if RsMailSet("CfgName") = "SysCfg-SendBox" then SysCfg_SendBox = RsMailSet("CfgBody")
if RsMailSet("CfgName") = "SysCfg-SendMailPass" then SysCfg_SendMailPass = RsMailSet("CfgBody")
if RsMailSet("CfgName") = "SysCfg-SendMailServer" then SysCfg_SendMailServer = RsMailSet("CfgBody")
if RsMailSet("CfgName") = "SysCfg-SendMailUser" then SysCfg_SendMailUser = RsMailSet("CfgBody")
if RsMailSet("CfgName") = "SysCfg-SendName" then SysCfg_SendName = RsMailSet("CfgBody")
RsMailSet.movenext
loop
RsMailSet.close
On Error Resume Next
Call SplitEmail(EmailSet, Title, Body)
Set jmail = Server.CreateObject("JMAIL.Message") '建立发送邮件的对象
jmail.Charset = "GB2312" '邮件的文字编码
'jmail.ContentType = "text/html" '邮件的格式为HTML格式或纯文本
jmail.AddRecipient EMail 'lfz_mail@163.com" '邮件收件人的地址
jmail.From = SysCfg_SendBox 'Session("MAILFROM") 'abc@abc.com '发件人的E-MAIL地址
jmail.MailServerUserName = SysCfg_SendMailUser 'Session("MAILUSER") '如:web@abc.com '登录邮件服务器的用户名 (您的邮件地址)
jmail.MailServerPassword = SysCfg_SendMailPass 'Session("MAILPASSWORD") ' 123456 '登录邮件服务器的密码 (您的邮件密码)
jmail.Subject = Title '邮件的标题
jmail.Body = Body '邮件的内容
jmail.Priority = 1 '邮件的紧急程序,1 为最快,5 为最慢, 3 为默认值
jmail.Send(SysCfg_SendMailServer) 'Session("MAILSERVER")) 'mail.cbdcn.com执行邮件发送(通过邮件服务器地址)
jmail.Close()
set jmail = nothing
If Err Then
Result = Result & " 邮件发送失败:" & Err.Description
Else
Result = "邮件发送成功"
End If
SendEMail = Result
End Function
Function MD5(Msg)
MD5 = lqhm.MD5(Msg)
End Function
'####################################################################################################
'新增加帐务处理函数
'####################################################################################################
'财务综全处理函数
'driection:真实入帐,真实扣帐,借款入帐,借款扣帐,帐户冻结,帐户解冻,业务扣帐,业务退帐,扣帐
Function FunManage(direction, UserName, amount, billno, remark, ErrMsg)
FunManage = lqhm.FunManage(direction, UserName, amount, billno, remark, ErrMsg)
End Function
'判断会员金额是否足够扣帐
Function IsHandle(UserName, acount)
IsHandle = lqhm.IsHandle(UserName, acount)
End Function
'判断会员金额是否足够扣帐
Function IsHandleA(UserName, Price, ManageUser, PriceM)
IsHandleA = lqhm.IsHandleA(UserName, Price, ManageUser, PriceM)
End Function
'扣帐金额
Function handleA(UserName, Price, ManageUser, PriceM, remark)
handleA = lqhm.handleA(UserName, Price, ManageUser, PriceM, remark)
End Function
'#######################################################################################
'受理公用函数
'#######################################################################################
'通用受理函数
'Function TransHandle(ID, OrderTable, strtype, TransName)
' TransHandle = lqhm.TransHandle(ID, OrderTable, strtype, TransName)
'End Function
'开通业务
Function TransHandle(ID,strtype)
'TransHandle2 = lqhm.TransHandle2(ID, OrderTable, strtype, TransName)
Set rs = conn.Execute("select * from userorder where id='" & ID & "'")
UserName=rs("UserName")
price = rs("price")
priceA = rs("priceA")
applytime = rs("applytime")
applytype = rs("applytype")
domainname = rs("domainname")
applyname = rs("applyname")
rs.close
set rs = nothing
ManageUser = get_manageuser(username)
ret = CheckMoney(id)
if ret <> "" then
TransHandle = ret
exit function
end if
'服务器的时间单位是按月算.
pricetype = get_producttype(applytype)
If strtype = "1" Then
'断判是否有足够的资金
TransHandle = CheckMoney(ID)
if TransHandle <> "" then
exit function
end if
ReMark = "开通" & applyname & "[" & domainname & "]"
If FunManage("扣帐", UserName, price, billno, ReMark, ErrMsg) <> "0" Then
TransHandle = ErrMsg
Exit Function
End If
if IsAgent (ManageUser) = "Y" and ManageUser <> UserName then
If FunManage("扣帐", ManageUser, priceA, billno, ReMark, ErrMsg) <> "0" Then
TransHandle = ErrMsg
Exit Function
End If
end if
If IsNull(applytime) Or applytime = "" Then applytime = 1
If pricetype = "年" Then
regend = DateAdd("yyyy", applytime, Date)
ElseIf pricetype = "月" Then
regend = DateAdd("m", applytime, Date)
Else
regend = DateAdd("yyyy", 1, Date)
End If
conn.Execute ("update userorder set handle='处理成功',status='正常',handletime='" & Date & "',regend='" & regend & "' where id='" & ID & "'")
Else
conn.Execute ("update userorder set handle='处理失败',status='处理失败',handletime='" & Date & "' where id='" & ID & "'")
End If
End Function
'业务续费处理
Function TransCon(ID,applytime1,applytime2, TransName)
'TransCon = lqhm.TransCon(ID, OrderTable, applytime1,applytime2, TransName)
Set rs = conn.Execute("select * from userorder where id='" & ID & "'")
UserName=rs("UserName")
price = rs("priceA")
domainname = rs("domainname")
applytime = rs("applytime")
applytype = rs("applytype")
handle = rs("handle")
regendo = rs("regend")
applyname = rs("applyname")
rs.close
set rs = nothing
If handle <> "处理成功" Then
TransCon = "对不起,该业务未受理,或所处的状态不可续费"
Exit Function
End If
ManageUser = get_manageuser(username)
applytime = applytime1 * GetProductTime(applytype, applytime2)
'priceA = applytime1 * GetProductPrice(UserName, applytype, applytime2)
'price = priceA / applytime1
price = applytime1 * GetProductPrice(UserName, applytype, applytime2)
priceA = applytime1 * GetProductPrice(ManageUser, applytype, applytime2)
pricetype = get_producttype(applytype) '服务器的时间单位是按月算.
If (UserName <> TransName) And (ManageUser <>TransName) And (Mid(Session("IsAdmin"), 1, 1) <> "Y") Then
TransCon = "无权管理该业务的权限"
Exit Function
End If
TransCon = CheckMoney(ID)
if TransCon <> "" then
exit function
end if
'断判是否有足够的资金
ReMark = "续费" & applyname & "[" & domainname & "]"
If FunManage("扣帐", UserName, price, billno, ReMark, ErrMsg) <> "0" Then
TransCon = ErrMsg
Exit Function
End If
if IsAgent (ManageUser) = "Y" and ManageUser <> UserName then
If FunManage("扣帐", ManageUser, priceA, billno, ReMark, ErrMsg) <> "0" Then
TransCon = ErrMsg
Exit Function
End If
end if
If IsNull(applytime) Or applytime = "" Then applytime = 1
If pricetype = "年" Then
regend = DateAdd("yyyy", applytime, regendo)
ElseIf pricetype = "月" Then
regend = DateAdd("m", applytime, regendo)
Else
regend = DateAdd("yyyy", 1, regendo)
End If
If OrderTable <> "domain" Then
conn.Execute ("update userorder set regend='" & regend & "',price=" & price & ",priceA=" & priceA & ",status='正常' where id='" & ID & "'")
Else
conn.Execute ("update userorder set regend='" & regend & "',price=" & price & ",priceA=" & priceA & ",status='正常' where id='" & ID & "'")
End If
'系统未实时处理,在订单受理中提示管理员
action=applyname & "订单[" & ID & "]已续费[" & applytime & "]" & pricetype & ",但未实时处理,请手工办理"
put_apply UserName,domainname,action
end Function
'获得订单的详细信息,输入:ID,OrderTable:domain,dummy,adver
Function getOrderDetail(ID,OrderTable,username,applytype,applyname,applytime,domainname,email,status,handle,regend,price,priceM)
getOrderDetail = lqhm.getOrderDetail(ID,OrderTable,username,applytype,applyname,applytime,domainname,email,status,handle,regend,price,priceM)
end Function
'获得得随机密码
Function GetRndPwd(pLen)
'GetRndPwd = lqhm.GetRndPwd(pLen)
Randomize '初始化随机数生成器。
Tmp = "01234567890qwertyuioplkjhgfdsazxcvbnmMNBVCXZLKJHGFDSAPOIUYTREWQHQWERTYUIOPLKKJHGFDSAXCVBff"
i = 1
Do While i < pLen
MyValue = Int((70 * Rnd) + 1) ' 产生 ascii值从 48 到 125 之间的随机数。
GetRndPwd = GetRndPwd & Mid(Tmp, MyValue, 1)
i = i + 1
Loop
end function
'直接从SOCK读数据
Function GetDataFromSock(IP,Port, Msg)
ret = lqhm.GetDataFromSock(IP,Port, Msg)
call WriteLog("","","远程通讯","IP=[" & IP & "],Port=[" & Port & "],Msg = [" & Msg & "], 返回=[" & ret & "]")
GetDataFromSock = ret
end Function
'IsSucc:1:成功,2,失败
'opType:1:用户登录,2:业务申请,3:业务管理,4:代理管理,5:系统管理,6:实时开通
Function WriteLog(OpName,IsSucc,OpType,ReMark)
sql = "insert into oplog (username,opname,issucc,optype,remark) values ('" & session("username") & "','" & OpName & "','" & IsSucc & "', '" & OpType & "', '" & Remark & "') "
conn.execute (sql)
end function
'SQL防入库函数
Function SafeRequest(ParaName)
Dim ParaValue
ParaValue=Request(ParaName)
if IsNumeric(ParaValue) = True then
SafeRequest=ParaValue
exit Function
elseIf Instr(LCase(ParaValue),"select ") > 0 or Instr(LCase(ParaValue),"insert ") > 0 or Instr(LCase(ParaValue),"delete from") > 0 or Instr(LCase(ParaValue),"count(") > 0 or Instr(LCase(ParaValue),"drop table") > 0 or Instr(LCase(ParaValue),"update ") > 0 or Instr(LCase(ParaValue),"truncate ") > 0 or Instr(LCase(ParaValue),"asc(") > 0 or Instr(LCase(ParaValue),"mid(") > 0 or Instr(LCase(ParaValue),"char(") > 0 or Instr(LCase(ParaValue),"xp_cmdshell") > 0 or Instr(LCase(ParaValue),"exec master") > 0 or Instr(LCase(ParaValue),"net localgroup administrators") > 0 or Instr(LCase(ParaValue)," and ") > 0 or Instr(LCase(ParaValue),"net user") > 0 or Instr(LCase(ParaValue)," or ") > 0 then
Response.Write "<script language='javascript'>"
Response.Write "alert('可疑的SQL注入请求!');" '发现SQL注入攻击提示信息
Response.Write "location.href='http://www.winiis.com/';" '发现SQL注入攻击转跳网址
Response.Write "<script>"
Response.end
else
SafeRequest=ParaValue
End If
End function
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -