📄 conn.asp
字号:
<%@ Language=VBScript CODEPAGE=936%>
<% Option Explicit %>
<%
' ============================================
' 常用全局变量
' ============================================
' 数据库对象
Dim oConn, oRs, sSql
' ********************************************
' 以下为数据库相关函数
' ********************************************
' ============================================
' 初始化数据库连接对象
' ============================================
Sub DBConnBegin()
' 如果数据库对象已打开,不要再打开
If IsObject(oConn) = True Then Exit Sub
' 如果你不创建一个数据库连接对象,ADO会在每个记录集打开时自动创建一个新的数据库连接对象,就算你用的是相同的SQL语句。
Set oConn = Server.CreateObject("ADODB.Connection")
On Error Resume Next
' SQL Server 2000数据库
Dim ConnStr
ConnStr="Provider=SQLOLEDB.1;Server=IBM;UID=sa;PWD=zhujie;Database=BookSiteDB "
oConn.Open ConnStr
If Err.Number > 0 Then
' 完全地退出正在运行的脚本
Response.End
End If
' 创建一个记录集
Set oRs = Server.CreateObject( "ADODB.Recordset" )
End Sub
' ============================================
' 释放数据库连接对象
' ============================================
Sub DBConnEnd()
On Error Resume Next
oRs.Close
Set oRs = Nothing
oConn.Close
Set oConn = Nothing
End Sub
' ********************************************
' 以下为常用函数
' ********************************************
' ============================================
' 错误返回处理
' ============================================
Sub Go_Error(str)
Call DBConnEnd()
Response.Write "<script language=javascript>history.back();</script>"
'Response.Write "<script language=javascript>alert('" & str & "\n\n请检查...');<s/script>"
Response.End
End Sub
Sub Go2_Error(str)
Call DBConnEnd()
Response.Write "<script language=javascript>alert('" & str & "\n\n系统将自动返回...');history.back();</script>"
Response.End
End Sub
' ============================================
' 成功信息返回
' 参数:str 返回的错误信息
' goUrl 返回的页面
' ============================================
Sub Go_Success(str,goUrl)
Response.Write "<script language=javascript>alert('" & str & "');location.href='"&goUrl&"';</script>"
'Response.End
End Sub
' ============================================
' 格式化时间(显示)
' 参数:n_Flag
' 1:"yyyy-mm-dd hh:mm:ss"
' 2:"yyyy-mm-dd"
' 3:"hh:mm:ss"
' 4:"yyyy年mm月dd日"
' 5:"yyyymmdd"
' ============================================
Function Format_Time(s_Time, n_Flag)
Dim y, m, d, h, mi, s
Format_Time = ""
If IsDate(s_Time) = False Then Exit Function
y = cstr(year(s_Time))
m = cstr(month(s_Time))
If len(m) = 1 Then m = "0" & m
d = cstr(day(s_Time))
If len(d) = 1 Then d = "0" & d
h = cstr(hour(s_Time))
If len(h) = 1 Then h = "0" & h
mi = cstr(minute(s_Time))
If len(mi) = 1 Then mi = "0" & mi
s = cstr(second(s_Time))
If len(s) = 1 Then s = "0" & s
Select Case n_Flag
Case 1
' yyyy-mm-dd hh:mm:ss
Format_Time = y & "-" & m & "-" & d & " " & h & ":" & mi & ":" & s
Case 2
' yyyy-mm-dd
Format_Time = y & "-" & m & "-" & d
Case 3
' hh:mm:ss
Format_Time = h & ":" & mi & ":" & s
Case 4
' yyyy年mm月dd日
Format_Time = y & "年" & m & "月" & d & "日"
Case 5
' yyyymmdd
Format_Time = y & m & d
End Select
End Function
' ============================================
' 把字符串进行HTML解码,替换server.htmlencode
' 去除Html格式,用于显示输出
' ============================================
Function outHTML(str)
Dim sTemp
sTemp = str
outHTML = ""
If IsNull(sTemp) = True Then
Exit Function
End If
sTemp = Replace(sTemp, "&", "&")
sTemp = Replace(sTemp, "<", "<")
sTemp = Replace(sTemp, ">", ">")
sTemp = Replace(sTemp, Chr(34), """)
sTemp = Replace(sTemp, Chr(10), "<br>")
outHTML = sTemp
End Function
' ============================================
' 去除Html格式,用于从数据库中取出值填入输入框时
' 注意:value="?"这边一定要用双引号
' ============================================
Function inHTML(str)
Dim sTemp
sTemp = str
inHTML = ""
If IsNull(sTemp) = True Then
Exit Function
End If
sTemp = Replace(sTemp, "&", "&")
sTemp = Replace(sTemp, "<", "<")
sTemp = Replace(sTemp, ">", ">")
sTemp = Replace(sTemp, Chr(34), """)
inHTML = sTemp
End Function
' ============================================
' 检测上页是否从本站提交
' 返回:True,False
' ============================================
Function IsSelfRefer()
Dim sHttp_Referer, sServer_Name
sHttp_Referer = CStr(Request.ServerVariables("HTTP_REFERER"))
sServer_Name = CStr(Request.ServerVariables("SERVER_NAME"))
If Mid(sHttp_Referer, 8, Len(sServer_Name)) = sServer_Name Then
IsSelfRefer = True
Else
IsSelfRefer = False
End If
End Function
' ============================================
' 得到安全字符串,在查询中使用
' ============================================
Function Get_SafeStr(str)
Get_SafeStr = Replace(Replace(Replace(Trim(str), "'", ""), Chr(34), ""), ";", "")
End Function
' ============================================
' 取实际字符长度
' ============================================
Function Get_TrueLen(str)
Dim l, t, c, i
l = Len(str)
t = l
For i = 1 To l
c = Asc(Mid(str, i, 1))
If c < 0 Then c = c + 65536
If c > 255 Then t = t + 1
Next
Get_TrueLen = t
End Function
' ============================================
' 用于插入数据库的时候替换单引号"'"
' ============================================
Function InDb(str)
Dim sTemp
sTemp = trim(str)
sTemp=replace(sTemp,"'","''")
InDb=sTemp
End Function
' ============================================
' 判断是否安全字符串,在注册登录等特殊字段中使用
' ============================================
Function IsSafeStr(str)
Dim s_BadStr, n, i
s_BadStr = "' &<>?%,;:()`~!@#$^*{}[]|+-=" & Chr(34) & Chr(9) & Chr(32)
n = Len(s_BadStr)
IsSafeStr = True
For i = 1 To n
If Instr(str, Mid(s_BadStr, i, 1)) > 0 Then
IsSafeStr = False
Exit Function
End If
Next
End Function
'# ----------------------------------------------------------------------------
'# 函数:LeftStr(text,length)
'# 描述:代替left函数按照中文两个字符,字母一个字符的方式截长
'# 参数: text-字符串,length-要截取的长度
'# 返回:
'# 作者:Jay
'# 日期:2004
'#-----------------------------------------------------------------------------
Function LeftStr(text,length)
Dim t
t=""
Dim mt
Dim l
l=0
Dim c
For i= 1 To Len(text)
mt=mid(text,i,1)
c=Asc(mt)
If c<0 Then c=c+65536
If c > 255 Then
l=l+2
Else
l=l+1
End If
If l<=CLng(length) Then
t=t&mt
else
exit for
End If
Next
LeftStr=t
End Function
' ============================================
' 并经过处理返回数组形式(去除空行)
' 一般用于返回文本区的内容。
' ============================================
function GetSplit(text)
dim textsplit
text=replace(text,chr(13),"")
textsplit=split(text,chr(10))
text=""
for i=0 to ubound(textsplit)
if not isnull(textsplit(i)) and textsplit(i)<>"" then
text=text&trim(textsplit(i))&"$$"
end if
next
text=left(text,len(text)-2)
textsplit=split(text,"$$")
GetSplit=textsplit
end function
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -