Startup.asp
上传用户:mingda
上传日期:2017-06-20
资源大小:27691k
文件大小:6k
源码类别:

OA系统

开发平台:

Java

  1. <%@ Language=VBScript CODEPAGE=936%>
  2. <% Option Explicit %>
  3. <%
  4. ' ============================================
  5. ' 常用全局变量
  6. ' ============================================
  7. ' 数据库对象
  8. Dim oConn, oRs, sSql
  9. ' ============================================
  10. ' 初始数据处理
  11. ' ============================================
  12. ' 执行每天只需处理一次的事件
  13. 'Call BrandNewDay()
  14. ' 初始化数据库连接
  15. 'Call DBConnBegin()
  16. ' ********************************************
  17. ' 以下为初始函数
  18. ' ********************************************
  19. ' ============================================
  20. ' 执行每天只需处理一次的事件
  21. ' ============================================
  22. Sub BrandNewDay()
  23. Dim sDate, y, m, d, w
  24. Dim sDateChinese
  25. sDate = Date()
  26. If Application("date_today") = sDate Then Exit Sub
  27. y = CStr(Year(sDate))
  28. m = CStr(Month(sDate))
  29. If Len(m) = 1 Then m = "0" & m
  30. d = CStr(Day(sDate))
  31. If Len(d) = 1 Then d = "0" & d
  32. w = WeekdayName(Weekday(sDate))
  33. sDateChinese = y & "年" & m & "月" & d & "日&nbsp;" & w
  34. Application.Lock
  35. Application("date_today") = sDate
  36. Application("date_chinese") = sDateChinese '今天的中文样式
  37. Application.Unlock
  38. End Sub
  39. ' ********************************************
  40. ' 以下为数据库相关函数
  41. ' ********************************************
  42. ' ============================================
  43. ' 初始化数据库连接对象
  44. ' 使用原则:最迟调用,最早释放
  45. ' ============================================
  46. Sub DBConnBegin()
  47. ' 如果数据库对象已打开,不要再打开
  48. If IsObject(oConn) = True Then Exit Sub
  49. ' 你可以不需要打开数据库连接对象而直接打开记录集对象,但如果你需要打开多个记录集对象的话,效率是很低的。
  50. ' 如果你不创建一个数据库连接对象,ADO会在每个记录集打开时自动创建一个新的数据库连接对象,就算你用的是相同的SQL语句。
  51. Set oConn = Server.CreateObject("ADODB.Connection")
  52. On Error Resume Next
  53. ' Access数据库
  54. oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("db/WebEditor.mdb")
  55. ' SQL Server 2000数据库
  56. 'oConn.Open "Provider=SQLOLEDB.1;Server=localhost;UID=WebEditor;PWD=123456;Database=WebEditor"
  57. If Err.Number > 0 Then
  58. ' 显示错误信息,并且发送邮件通知管理员
  59. 'Call DBConnError(Err)
  60. ' 完全地退出正在运行的脚本
  61. Response.End
  62. End If
  63. ' 创建一个记录集
  64. Set oRs = Server.CreateObject( "ADODB.Recordset" )
  65. End Sub
  66. ' ============================================
  67. ' 释放数据库连接对象
  68. ' ============================================
  69. Sub DBConnEnd()
  70. On Error Resume Next
  71. oRs.Close
  72. Set oRs = Nothing
  73. oConn.Close
  74. Set oConn = Nothing
  75. End Sub
  76. ' ********************************************
  77. ' 以下为常用函数
  78. ' ********************************************
  79. ' ============================================
  80. ' 错误返回处理
  81. ' ============================================
  82. Sub Go_Error(str)
  83. Call DBConnEnd()
  84. Response.Write "<script language=javascript>alert('" & str & "nn系统将自动返回前一页面...');history.back();</script>"
  85. Response.End
  86. End Sub
  87. ' ============================================
  88. ' 格式化时间(显示)
  89. ' 参数:n_Flag
  90. ' 1:"yyyy-mm-dd hh:mm:ss"
  91. ' 2:"yyyy-mm-dd"
  92. ' 3:"hh:mm:ss"
  93. ' 4:"yyyy年mm月dd日"
  94. ' 5:"yyyymmdd"
  95. ' ============================================
  96. Function Format_Time(s_Time, n_Flag)
  97. Dim y, m, d, h, mi, s
  98. Format_Time = ""
  99. If IsDate(s_Time) = False Then Exit Function
  100. y = cstr(year(s_Time))
  101. m = cstr(month(s_Time))
  102. If len(m) = 1 Then m = "0" & m
  103. d = cstr(day(s_Time))
  104. If len(d) = 1 Then d = "0" & d
  105. h = cstr(hour(s_Time))
  106. If len(h) = 1 Then h = "0" & h
  107. mi = cstr(minute(s_Time))
  108. If len(mi) = 1 Then mi = "0" & mi
  109. s = cstr(second(s_Time))
  110. If len(s) = 1 Then s = "0" & s
  111. Select Case n_Flag
  112. Case 1
  113. ' yyyy-mm-dd hh:mm:ss
  114. Format_Time = y & "-" & m & "-" & d & " " & h & ":" & mi & ":" & s
  115. Case 2
  116. ' yyyy-mm-dd
  117. Format_Time = y & "-" & m & "-" & d
  118. Case 3
  119. ' hh:mm:ss
  120. Format_Time = h & ":" & mi & ":" & s
  121. Case 4
  122. ' yyyy年mm月dd日
  123. Format_Time = y & "年" & m & "月" & d & "日"
  124. Case 5
  125. ' yyyymmdd
  126. Format_Time = y & m & d
  127. End Select
  128. End Function
  129. ' ============================================
  130. ' 把字符串进行HTML解码,替换server.htmlencode
  131. ' 去除Html格式,用于显示输出
  132. ' ============================================
  133. Function outHTML(str)
  134. Dim sTemp
  135. sTemp = str
  136. outHTML = ""
  137. If IsNull(sTemp) = True Then
  138. Exit Function
  139. End If
  140. sTemp = Replace(sTemp, "&", "&amp;")
  141. sTemp = Replace(sTemp, "<", "&lt;")
  142. sTemp = Replace(sTemp, ">", "&gt;")
  143. sTemp = Replace(sTemp, Chr(34), "&quot;")
  144. sTemp = Replace(sTemp, Chr(10), "<br>")
  145. outHTML = sTemp
  146. End Function
  147. ' ============================================
  148. ' 去除Html格式,用于从数据库中取出值填入输入框时
  149. ' 注意:value="?"这边一定要用双引号
  150. ' ============================================
  151. Function inHTML(str)
  152. Dim sTemp
  153. sTemp = str
  154. inHTML = ""
  155. If IsNull(sTemp) = True Then
  156. Exit Function
  157. End If
  158. sTemp = Replace(sTemp, "&", "&amp;")
  159. sTemp = Replace(sTemp, "<", "&lt;")
  160. sTemp = Replace(sTemp, ">", "&gt;")
  161. sTemp = Replace(sTemp, Chr(34), "&quot;")
  162. inHTML = sTemp
  163. End Function
  164. ' ============================================
  165. ' 检测上页是否从本站提交
  166. ' 返回:True,False
  167. ' ============================================
  168. Function IsSelfRefer()
  169. Dim sHttp_Referer, sServer_Name
  170. sHttp_Referer = CStr(Request.ServerVariables("HTTP_REFERER"))
  171. sServer_Name = CStr(Request.ServerVariables("SERVER_NAME"))
  172. If Mid(sHttp_Referer, 8, Len(sServer_Name)) = sServer_Name Then
  173. IsSelfRefer = True
  174. Else
  175. IsSelfRefer = False
  176. End If
  177. End Function
  178. ' ============================================
  179. ' 得到安全字符串,在查询中使用
  180. ' ============================================
  181. Function Get_SafeStr(str)
  182. Get_SafeStr = Replace(Replace(Replace(Trim(str), "'", ""), Chr(34), ""), ";", "")
  183. End Function
  184. ' ============================================
  185. ' 取实际字符长度
  186. ' ============================================
  187. Function Get_TrueLen(str)
  188. Dim l, t, c, i
  189. l = Len(str)
  190. t = l
  191. For i = 1 To l
  192. c = Asc(Mid(str, i, 1))
  193. If c < 0 Then c = c + 65536
  194. If c > 255 Then t = t + 1
  195. Next
  196. Get_TrueLen = t
  197. End Function
  198. ' ============================================
  199. ' 判断是否安全字符串,在注册登录等特殊字段中使用
  200. ' ============================================
  201. Function IsSafeStr(str)
  202. Dim s_BadStr, n, i
  203. s_BadStr = "'  &<>?%,;:()`~!@#$^*{}[]|+-=" & Chr(34) & Chr(9) & Chr(32)
  204. n = Len(s_BadStr)
  205. IsSafeStr = True
  206. For i = 1 To n
  207. If Instr(str, Mid(s_BadStr, i, 1)) > 0 Then
  208. IsSafeStr = False
  209. Exit Function
  210. End If
  211. Next
  212. End Function
  213. %>