⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 data_s.asp

📁 这是一个学生档案管理系统,欢迎大家下载使用哈!
💻 ASP
字号:
<!--#include file="../inc/md5.asp"-->
<!--#include file="../conn.asp"-->
<!--#include file="inc/inc.asp"-->
<!--#include file="../inc/inc.asp"-->
<!--#include file="admin_page_top.asp"-->
<%
Dim ZC_DATABASE_PATH
'数据库的路径
ZC_DATABASE_PATH=DataPath


data_array= Split(ZC_DATABASE_PATH,"/")


Dim action
action=trim(request("action"))
Dim dbpath,bkfolder,bkdbname,fso,fso1

Select Case action
Case ""
	Call chushihua()
Case "CompressData" '压缩数据
	Dim tmprs
	dim allarticle
	dim Maxid
	dim topic,username,dateandtime,body
	call CompressData()
case "BackupData" '备份数据
	if request("act")="Backup" Then
		call updata()
	else
		call BackupData()
	end If
case "RestoreData" '恢复数据
	dim backpath
	if request("act")="Restore" Then
		Dbpath=request.form("Dbpath")
		backpath=ZC_DATABASE_PATH
		if dbpath="" Then
		response.write "Please input your database whole Name" 
		else
		Dbpath=server.mappath(Dbpath)
		end If
		backpath=server.mappath(backpath)

		Set Fso=server.CreateObject("scripting.filesystemobject")
		if fso.fileexists(dbpath) Then 
			fso.copyfile Dbpath,Backpath
			rightmsg "","数据库被成功还原!<br>"
		else
			errormsg "没找到您所需要的数据库!" 
		end If
	else
		call RestoreData()
	end If
Case "SpaceSize" '系统空间占用
	call SpaceSize()
Case "deletebackup"
	Dim dbname
	dbpath=Request.QueryString("dbpath")
	dbname=Request.QueryString("dbname")
	dbpath=Server.MapPath(dbpath)
	dbpath=dbpath &"\"&dbname
	set fso = CreateObject("Scripting.FileSystemObject")
	If fso.FileExists(dbPath) Then
		fso.DeleteFile(DBPath)
		Set fso = nothing
		rightmsg "data_s.asp?action=BackupData","您备份的数据库已经" & dbpath &"被成功删除!"
	Else
		response.write dbpath 
		errormsg "输入的路径错误,请确认后重新输入!"
	End If
Case Else
End Select

%>
<!--#include file="admin_page_footer.asp"-->

<%
'====================系统空间占用=======================
Sub SpaceSize()
	On Error Resume Next
	%>
	<h1>系统空间查看</h1>
	<table width="100%" cellspacing="1" cellpadding="0" class="info_tab">
<!-- 		<tr> 
		<td class="art_tit zq">注意:
输入数据库所在相对路径,并且输入数据库名称(正在使用中数据库不能压缩,请选择备份数据库进行压缩操作)  
</td>
		</tr> -->
		
		<tr> 
		<td class="art_info2 zq">数据库:<%showSpaceinfo("../"&data_array(UBound(data_array)-1))%></td></tr>
		<tr> 
		<td class="art_info2 zq">备份数据库:<%showSpaceinfo("../databackup")%></td></tr>
		<tr> 
		<td class="art_info2 zq">页面文件:<%showSpaceinfo("$$~_~$$")%></td></tr>
		<tr> 
		<td class="art_info2 zq">系统总共:<%showSpaceinfo("../")%></td></tr>
	</table>
<%End Sub
Sub ShowSpaceInfo(drvpath)
	dim fso,d,size,showsize
	set fso=server.CreateObject("scripting.filesystemobject") 
	If drvpath="$$~_~$$" Then
		drvpath1=server.mappath("../") 
		set d=fso.getfolder(drvpath1) 
		size1=d.size
		drvpath2=server.mappath("../databackup") 
		set e=fso.getfolder(drvpath2) 
		size2=e.size
		drvpath3=server.mappath("../"&data_array(UBound(data_array)-1)) 
		set f=fso.getfolder(drvpath3) 
		size2=f.size
		size=size1-size2-size3
	Else
		drvpath=server.mappath(drvpath) 
		set d=fso.getfolder(drvpath) 
		size=d.size
	End If
	showsize=size & " Byte" 
	if size>1024 Then
		size=(Size/1024)
		showsize=size & " KB"
	end If
	if size>1024 Then
		size=(size/1024)
		showsize=formatnumber(size,2) & " MB" 
	end If
	if size>1024 Then
		size=(size/1024)
		showsize=formatnumber(size,2) & " GB" 
	end If 
	response.write "<font face=verdana>" & showsize & "</font>"
End Sub 



Sub RestoreData()%>
	<h2>还原数据库(恢复论坛数据( 需要FSO支持,FSO相关帮助请看微软网站 ))</h2>
	<table width="100%" cellspacing="1" cellpadding="0" class="info_tab">
<!-- 		<tr> 
		<td class="art_tit zq">注意:
输入数据库所在相对路径,并且输入数据库名称(正在使用中数据库不能压缩,请选择备份数据库进行压缩操作)  
</td>
		</tr> -->
		<form id="edit" method="post" action="data_s.asp?action=RestoreData&act=Restore">
		<tr> 
		<td class="art_tit zq">还原的路径(相对路径):<input type=text size=30 name=DBpath value="..\DataBackup\<%=Date()%>_Bak.mdb"></td>
		</tr>
		<tr> 
		<td class="art_tit">&nbsp;&nbsp;&nbsp;<input type=submit value="开始还原"></td>
		</tr>


		</form>
	</table>
	<h6>在上面填写本程序的数据库路径全名,本程序的默认备份数据库文件为DataBackup\时间_Bak.MDB,请按照您的备份文件自行修改。</h6>
  <h6>您可以用这个功能来备份您的法规数据,以保证您的数据安全!</h6>
  <h6>注意:所有路径都是相对与程序空间根目录的相对路径</h6>	
<%End Sub


Sub updata()
	Dbpath=ZC_DATABASE_PATH
	Dbpath=server.mappath(Dbpath)
	bkfolder=request.form("bkfolder")
	bkdbname=request.form("bkdbname")

	If bkfolder="" Then bkfolder="..\Databackup"
	If bkfolder="..\" & data_array(UBound(data_array)-1) Then errormsg "Error  备份数据库目标文件夹不可在系统数据库目录下!"
	If bkfolder="../" & data_array(UBound(data_array)-1) Then errormsg "Error  备份数据库目标文件夹不可在系统数据库目录下!"
	If bkdbname="" Then bkdbname="2007-9-9_bak"
	bkdbname=bkdbname & ".mdb"
	bkfolders=bkfolder
	Set Fso=server.CreateObject("scripting.filesystemobject")
	if fso.fileexists(dbpath) Then

		If CheckDir(bkfolder) = True Then
			fso.copyfile dbpath,bkfolder& "\"& bkdbname
		else
			MakeNewsDir bkfolder
			fso.copyfile dbpath,bkfolder& "\"& bkdbname
		end If
		
		response.write "<h2>已经成功备份,你的数据库的路径:" &bkfolders& "\"& bkdbname&"</h2>"
		response.write "<h4>点击此处将数据库下载下来:<a href="""& bkfolders & "/" & bkdbname &""">" & bkfolder & "/" & bkdbname &"</h4>"
		response.write "<h4><a href=""data_s.asp?action=deletebackup&dbpath="&bkfolders&"&dbname=" & bkdbname &""">当您下载完毕后,点击此处将删除备份的数据库!</h4>"
		response.write "<h4><a href=""javascript:history.go(-1)"">返回上一页</a></h4>"
	Else
		errormsg "Error  找不到文件!"
	End If
	Set fso = nothing
End Sub
'------------------检查某一目录是否存在-------------------
Function CheckDir(FolderPath)
	folderpath=Server.MapPath(".")&"\"&folderpath
	Set fso1 = CreateObject("Scripting.FileSystemObject")
	If fso1.FolderExists(FolderPath) Then	'存在
		CheckDir = True
	Else	'不存在
		CheckDir = False
	End If
	Set fso1 = nothing
End Function
'-------------根据指定名称生成目录-----------------------
Function MakeNewsDir(foldername)
	dim f
	Set fso1 = CreateObject("Scripting.FileSystemObject")
	Set f = fso1.CreateFolder(foldername)
	MakeNewsDir = True
	Set fso1 = nothing
End Function



Sub BackupData()
	%>
		<h2>备份数据库(恢复论坛数据( 需要FSO支持,FSO相关帮助请看微软网站 )</h2>
	<table width="100%" cellspacing="1" cellpadding="0" class="info_tab">
<!-- 		<tr> 
		<td class="art_tit zq">注意:
输入数据库所在相对路径,并且输入数据库名称(正在使用中数据库不能压缩,请选择备份数据库进行压缩操作)  
</td>
		</tr> -->
		<form id="edit" method="post" action="data_s.asp?action=BackupData&act=Backup">
		<tr> 
		<td class="art_tit zq">备份数据库目录(相对路径):<input type=text name=bkfolder value="..\Databackup" style="width:180px;">&nbsp;&nbsp;&nbsp;&nbsp;如目录不存在,程序将自动创建</td>
		</tr>
		<tr> 
		<td class="art_tit zq">备份数据库名称(填写名称):<input type=text name=bkDBname value="<%=Date()%>_bak"  style="width:156px;">.mdb&nbsp;&nbsp;&nbsp;&nbsp;按日期自动命名。如备份目录有该文件,将覆盖,如没有,将自动创建</td>
		</tr>
		<tr> 
		<td class="art_tit">&nbsp;&nbsp;&nbsp;<input type=submit value="开始备份"></td>
		</tr>


		</form>
	</table>
	<h6>请一定不能用默认名称命名备份数据库。</h6>
  <h6>您可以用这个功能来备份您的法规数据,以保证您的数据安全!</h6>
  <h6>注意:所有路径都是相对与程序空间根目录的相对路径</h6>	
	<%
End Sub




Sub CompressData()
%>
<h2>压缩数据库( 需要FSO支持,FSO相关帮助请看微软网站 )</h2>
	<table width="100%" cellspacing="1" cellpadding="0" class="info_tab">
<!-- 		<tr> 
		<td class="art_tit zq">注意:
输入数据库所在相对路径,并且输入数据库名称(正在使用中数据库不能压缩,请选择备份数据库进行压缩操作)  
</td>
		</tr> -->
		<form id="edit" action="data_s.asp?action=CompressData" method="post">
		<tr> 
		<td class="art_tit zq"><input type="checkbox" name="boolIs97" value="True">如果是ac97,请将钩打上.(默认是Access 2000)</td>
		</tr>
		<tr> 
		<td class="art_tit">&nbsp;&nbsp;&nbsp;<input type="submit" value="开始压缩"></td>
		</tr>
<INPUT TYPE="hidden" NAME="Cdat" value="1">

		</form>
	</table>

	<%
	Dim dbpath,boolIs97
	boolIs97 = request("boolIs97")
	If request("Cdat")<>"" Then 
	dbpath = server.mappath(ZC_DATABASE_PATH)
	response.write(CompactDB(dbpath,boolIs97))
	End If
End Sub

'=====================压缩参数=========================
Function CompactDB(dbPath, boolIs97)
	Dim fso, Engine, strDBPath,JET_3X
	strDBPath = Left(dbPath,InStrRev(DBPath,"\"))
	Set fso = CreateObject("Scripting.FileSystemObject")

	If fso.FileExists(dbPath) Then
		fso.CopyFile dbpath,strDBPath & "temp.mdb"
		Set Engine = CreateObject("JRO.JetEngine")

		If boolIs97 = "True" Then
			Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & "temp.mdb", _
			"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & "temp1.mdb;" _
			& "Jet OLEDB:Engine Type=" & JET_3X
		Else
			Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & "temp.mdb", _
			"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & "temp1.mdb"
		End If

		fso.CopyFile strDBPath & "temp1.mdb",dbpath
		fso.DeleteFile(strDBPath & "temp.mdb")
		fso.DeleteFile(strDBPath & "temp1.mdb")
		Set fso = nothing
		Set Engine = nothing

		CompactDB = "<h6>您的数据库已经被成功压缩!	" & vbCrLf

	Else
		CompactDB = "<h6>您输入的路径错误,请确认后重新输入!</h6>" & vbCrLf
	End If

End Function


'////////////////////end////////////////////////
%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -