📄 sliceupdate_process.asp
字号:
<%
Option Explicit
'----------------------------------------------------------------------------------
'本页:
' 资源模板处理页面
'说明:
'
'----------------------------------------------------------------------------------
%>
<!--#include file="inc/Config.class.asp"-->
<!--#include file="inc/DBControl.class.asp"-->
<!--#include file="inc/FunctionLib.class.asp"-->
<!--#include file="inc/Manager.class.asp"-->
<!--#include file="inc/TagParser.class.asp"-->
<!--#include file="inc/SliceParser.class.asp"-->
<!--#include file="inc/Template.class.asp"-->
<%
Dim Cfg, Db, FLib, Admin, Tpl
Set Cfg = New Config
Set Db = New DBControl
Set FLib = New FunctionLib
Set Admin = New Manager
Set Tpl = New TemplateEngine
If Not Admin.Logined Then
FLib.Alert "对不起,你已经超时或未登录","./",1
Response.End
End If
Db.Open()
Dim Work
Work = Request("Work")
'选择执行操作'
Select Case Work
Case "ExeCuteSlice"
ExeCuteSlice()
Case "ExeCuteSlicePackage"
ExeCuteSlicePackage()
End Select
Function ExeCuteSlice()
Dim IdList, ProgramStart
IdList = FLib.SafeSql(Request("IdList"))
If IdList = "" Then
Exit Function
End If
ProgramStart = Timer
ExeCuteSliceById IdList
FLib.Alert "更新完毕,本次共花费(" & (Timer - ProgramStart) & ")秒" , "BACK", 0
Response.End
End Function
Function ExeCuteSliceById(IdList)
Dim Sql, Rs
Dim SParser, tmpContent, fPath
Dim Fso, Fle
Set Fso = Server.CreateObject(Cfg.FileSystemObject_Name)
Set SParser = New SliceParser
Sql = "SELECT * FROM slice_list WHERE id IN (" & IdList &")"
Set Rs = Db.ExeCute(Sql)
While Not Rs.Eof
Select Case Rs("slice_type")
Case 1 :
tmpContent = SParser.Compile(Rs("slice_data"))
Case 2 :
tmpContent = Rs("slice_data")
Case 3 :
Select Case FLib.ChkPathType(Rs("slice_data"))
Case 1 :
If Fso.FileExists(Rs("slice_data")) Then
Set Fle = Fso.OpenTextFile(Rs("slice_data"), 1)
tmpContent = Fle.ReadAll
Fle.Close
Else
tmpContent = ""
End If
Case 2 :
If Fso.FileExists(Server.MapPath(Rs("slice_data"))) Then
Set Fle = Fso.OpenTextFile(Server.MapPath(Rs("slice_data")), 1)
tmpContent = Fle.ReadAll
Fle.Close
Else
tmpContent = ""
End If
Case 3 :
tmpContent = FLib.readRemoteFile(Rs("slice_data"))
End Select
Case Else
tmpContent = ""
End Select
If FLib.ChkPathType(Rs("file_path")) = 1 Then
fPath = Rs("file_path")
Else
fPath = Server.MapPath(Rs("file_path"))
End If
SaveSliceContent fPath, Rs("start_flag"), Rs("end_flag"), tmpContent
Rs.MoveNext
Wend
Sql = "UPDATE slice_list SET last_update_date=GETDATE(), last_update_user='" & Admin.UserName & "' WHERE id IN (" & IdList & ")"
Db.ExeCute(Sql)
End Function
Function SaveSliceContent(fPath, sFlag, eFlag, strHtml)
'On Error Resume Next'
Tpl.OpenTemplate(fPath)
Tpl.StartElement = sFlag
Tpl.EndElement = eFlag
Tpl.Value = strHtml
Tpl.ReplaceTemplate()
Tpl.Save()
If Err.Number <> 0 Then
SaveSliceContent = False
Else
SaveSliceContent = True
End If
Err.Clear()
ENd Function
Function ExeCuteSlicePackage()
Dim Id, Sql, Rs, ProgramStart, IdList
Id = FLib.SafeSql(Request("Id"))
Sql = "SELECT TOP 1 * FROM slice_package_list WHERE id=" & Id
Set Rs = Db.ExeCute(Sql)
If Rs.Eof And Rs.Bof Then
Rs.Close()
Set Rs = Nothing
FLib.Alert "记录不存在", "BACK", 0
Response.End
End If
IdList = Rs("slice_id_list")
Rs.Close()
Set Rs = Nothing
ProgramStart = Timer
ExeCuteSliceById IdList
Sql = "UPDATE slice_package_list SET last_update_date=GETDATE(), last_update_user='" & Admin.UserName & "' WHERE id = " & Id
Db.ExeCute(Sql)
FLib.Alert "更新完毕,本次共花费(" & (Timer - ProgramStart) & ")秒" , "BACK", 0
Response.End
End Function
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -