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

📄 bkdata.asp

📁 购物系统(本版为正式商业版
💻 ASP
字号:

<%
server.scripttimeout=1000
'create table t_dbbak(            
'dbbak_id           int identity primary key,
'dbbak_filename     vaRCHAR(100),
'dbbak_dbname       VARCHAR(100),
'dbbak_status       VARCHAR(10) DEFAULT '成功',
'dbbak_flag         int default 1,
'dbbak_date   datetime default getdate()
') 
strSQLServerName = "127.0.0.1"      '服务器名称或地址
strSQLDBUserName = "sa"    '数据库帐号
strSQLDBPassword = "1111"    '数据库密码,这个是我的,改成你自己的
strSQLDBName = "master"  '数据库名称
Set connbk = Server.CreateObject("ADODB.Connection") 
connbk.ConnectionTimeout = 10 '设置connection对象连接数据库的逾期时间
connbk.CommandTimeout = 20 '设置执行execute方法时间
connbk.CursorLocation = 3 '将记录存放在游览器端
connstr = "Provider=SQLOLEDB.1;Persist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & ";Password=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
connbk.Open connstr
%>


<%if session("admin")="" then
response.Write "<script language='javascript'>alert('网络超时或您还没有登陆!');window.location.href='login.asp';</script>"
response.End
end if
if session("flag")>1 then
response.Write "<div align=center><font size=80 color=red><b>您没有此项目管理权限!</b></font></div>"
response.End
end if

%>





<%

    set rs=server.createobject("adodb.recordset")
	    set rs1=server.createobject("adodb.recordset")
SelectedID=request.form("SelectedID")
'删除记录及实际文件
if SelectedID<>"" and request.form("mysubmit")<>"" then
    set fs=server.CreateObject ("Scripting.FileSystemObject")
	for i=1 to request.form("SelectedID").count
	    if rs.state=1 then rs.close
		rs.open	"SELECT dbbak_filename FROM t_dbbak WHERE dbbak_id="&request.form("SelectedID")(i),connbk,1,1
        
	    connbk.execute("DELETE t_dbbak WHERE dbbak_id="&request.form("SelectedID")(i))
        dbFile=server.MapPath ("db/")&"\"&rs(0)
		'删除相应的文件
		if fs.FileExists(dbFile) then
		    fs.DeleteFile dbFile
		end if
	next
	set fs=nothing
end if
page=Request("page")
if request("method")="delid" then
    connbk.execute("DELETE FROM t_dbbak WHERE dbbak_id="&request("id"))
	response.redirect "bkdata.asp?page="&page
end if
'恢复数据库
if request("method")="rec" then
    filen=request("filen")
	
    'comObject.sqlUpd("exec proKillProcess")
    connbk.execute("restore database new from disk='"&server.MapPath ("db/")&"\"&filen&"'") 
	    sql="INSERT INTO t_dbbak(dbbak_dbname,dbbak_filename,dbbak_status,dbbak_flag) VALUES('new','"&filen&"','成功',2)"
    'else
	'    sql="INSERT INTO t_dbbak(dbbak_dbname,dbbak_filename,dbbak_status,dbbak_flag) VALUES('new','"&filen&"','失败',2)"
	'end if
	connbk.execute(sql)
	response.redirect "bkdata.asp?page="&page
end if

'收缩数据文件
if request("method")="small" then
    connbk.execute("use new;DBCC SHRINKFILE (new_Log)")
	if rs.state=1 then rs.close
    rs.Open "new.dbo.sp_helpfile shop_log",connbk,1,3
    filesize=rs("size")
%>
<script language="javascript">
   alert("目前的日志文件大小:<%=filesize%>");
   history.back();
</script>
<%
    response.end
end if
'备份数据库
if request("method")="bak" then
    sDbname="new"&year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&".dat"
    connbk.execute("BACKUP DATABASE new to disk='"&server.MapPath ("db/")&"\"&sDbname&"'")
	    sql="INSERT INTO t_dbbak(dbbak_dbname,dbbak_filename,dbbak_status) VALUES('new','"&sDbname&"','成功')"
	'else
	  '  sql="INSERT INTO t_dbbak_"&CONST_DB_NAME&"(dbbak_dbname,dbbak_userid,dbbak_filename,dbbak_status) VALUES('"&CONST_DB_NAME&"','"&session("username")&"','"&RplStr(sDbname)&"','失败')"
	'end if
	connbk.execute(sql)
	response.redirect "bkdata.asp?page="&page
end if
sql="SELECT dbbak_id,dbbak_dbname,dbbak_filename,dbbak_status,convert(varchar(16),dbbak_date ,120) dbbak_date FROM t_dbbak  WHERE dbbak_dbname='new' AND dbbak_flag=1 ORDER BY dbbak_id DESC "
if page<>"" then 
    page=cint(page) 
else 
    page=1
end if
pageSize=10
if rs.state=1 then rs.close
rs.pagesize=pageSize
    rs.Open sql,connbk,1,3

    Record=rs.recordcount
	PageCount=rs.pagecount
if (PageCount<page) then 
    page=PageCount
	response.redirect "bkdata.asp?page="&page
end if
if page<1 then page=1
if not rs.eof then rs.absolutepage=page
sReference=""
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>数据备份</title>
<link href="../css.css" rel="stylesheet" type="text/css">

<SCRIPT LANGUAGE="JavaScript">
<!--
function SelectaAll(){
  for (var i=0;i<document.frm_sys.elements.length;i++)
    {
    var e=document.frm_sys.elements[i];
    if (e.name!='allbox')
      e.checked=document.frm_sys.allbox.checked;
    }
}
//-->
function fixPosition(divname) {
 divstyle = getDivStyle(divname);
 positionerImgName = divname + 'Pos';
 isPlacedUnder = false;
 if (isPlacedUnder) {
  setPosition(divstyle,positionerImgName,true);
 } else {
  setPosition(divstyle,positionerImgName)
 }
}

function toggleDatePicker(eltName,formElt) {
  var x = formElt.indexOf('.');
  var formName = formElt.substring(0,x);
  var formEltName = formElt.substring(x+1);
  newCalendar(eltName,document.forms[formName].elements[formEltName]);
  toggleVisible(eltName);
}


</SCRIPT>
<style type="text/css">
<!--
.style1 {
	color: #000000;
	font-weight: bold;
}
.style2 {color: #000000}
-->
</style>
</head>

<body  leftmargin="0" topmargin="0">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
 <form name="frm_sys" method="post" action="bkdata.asp?page=<%=page%>&<%=sReference%>" onsubmit="return delconfirm();">
 <tr> 
    <td><table width="100%" border="0" cellpadding="0" cellspacing="0" background="images/right_top2.gif">
        <tr> 
          <td width="1%">&nbsp;</td>
          <td width="99%"><table width="100%" border="0" cellspacing="0" cellpadding="5">
              <tr> 
                <td width="30%" style="font-size:14px;color:#ffffff">&nbsp;<span class="style1">数据备份</span> <a href="bkdata.asp?method=bak&page=<%=page%>">备份</a> <a href="bkdata.asp?method=small&page=<%=page%>">收缩日志文件</a></td>
                <td width="70%" align="right"><table border="0" cellspacing="0" cellpadding="0">
                    <tr> 
                      <td width="40">&nbsp;</td>
					  <td width="85">&nbsp;</td>
					  
                    </tr>
                  </table></td>
              </tr>
            </table></td>
        </tr>
      </table></td>
  </tr>
  <tr> 
    <td height="15" align="center"></td>
  </tr>
  <tr align="center"><td>
  <table width="93%" border="0" cellspacing="0" cellpadding="0">
        <tr>
          <td>共 <font color="#DC8100"><%=record%></font> 条记录 共 <font color="#DC8100"><%=pagecount%></font> 
            页 第 <font color="#DC8100"><%=page%></font> 页</td>
          <td align="right">[<%if page>1 then%><a href="?page=1&<%=sReference%>">首页</a><%else%>首页<%end if%>  <%if page>1 then%><a href="?page=<%=page-1%>&<%=sReference%>">前一页</a><%else%>前一页<%end if%>  <%if page<pagecount then%><a href="?page=<%=page+1%>&<%=sReference%>">下一页</a><%else%>下一页<%end if%>  <%if page<pagecount then%><a href="?page=<%=pagecount%>&<%=sReference%>">尾页</a><%else%>尾页<%end if%>]</td>
        </tr>
      </table>
  </td></tr>
  <tr>
    <td align="center"><TABLE bgColor=#9DB2D4 border=0 cellPadding=3 cellSpacing=1 width='90%' class=printtable>
        <TBODY>
		  <tr align="center" bgColor=#C7D3E6> 
                <td width="6%" align=middle noWrap class=ttTable><font color="#253E66"><b>序号</b></font></td>
                <td width="6%" align=middle noWrap class=ttTable><font color="#253E66"><b>选</b></font></td>
                <td width="30%" align=middle noWrap class=ttTable><font color="#253E66"><b>备份文件名</b></font></td>
                <td width="22%" align=middle noWrap class=ttTable><font color="#253E66"><b>备份时间</b></font></td>
                <td width="10%" align=middle noWrap class=ttTable><font color="#253E66"><b>备份结果</b></font></td>
				<td width="10%" align=middle noWrap class=ttTable><font color="#253E66"><b>恢复</b></font></td>
          </tr>
        <%
for i=1 to pagesize 
    if not rs.eof then  
'dbbak_id,dbbak_dbname,dbbak_filename,dbbak_status
%>
                <tr align="center" bgColor=#F0F3F8> 
                  <td width="6%" bgcolor="#F0F3F8" class='td' ><%=i+1+(page - 1)*pagesize%></td>
                  <td width="6%" bgcolor="#F0F3F8" class='td'><input type="checkbox" name="SelectedID" value="<%=rs(0)%>"></td>
				  <input type="hidden" name="SelectedFile" value="<%=rs(2)%>">
				  <td width="30%" bgcolor="#F0F3F8" class='td'>&nbsp;<a href="<%="\adminn\db\"&rs(2)%>"><%=rs(2)%></a></td>
                  
                  <td width="22%">&nbsp;<%=rs(4)%></td>
                  <td width="10%" align="center"><%=rs(3)%></td>
				  <td width="10%" align="center"><a href="javascript:recv('<%=rs(2)%>','<%=page%>');">恢复</a></td>
                </tr>
<%
    sql="SELECT dbbak_id,dbbak_dbname,dbbak_filename,dbbak_status,convert(varchar(16),dbbak_date,120) dbbak_date FROM t_dbbak  WHERE dbbak_dbname='new' AND dbbak_flag=2 AND dbbak_filename='"&rs(2)&"' ORDER BY dbbak_id DESC "
	Record1=0
    if rs1.state=1 then rs1.close
	rs1.open sql,connbk,1,1
	while not rs1.eof
%>
                <tr align="center" bgColor=#F0F3F8> 
				  <td width="30%" bgcolor="#F0F3F8" class='td' colspan="3" align="right">&nbsp;<font color="red">恢复信息:</font>&nbsp;[<a href="bkdata.asp?method=delid&page=<%=page%>&id=<%=rs1(0)%>">删除</a>]</td>

                  <td width="22%">&nbsp;<%=rs1(4)%></td>
                  <td width="10%" align="center"><%=rs1(3)%></td>
				  <td width="10%" align="center">&nbsp;</td>
                </tr>
<%
       rs1.movenext
	wend
	rs.movenext
	else
	    exit for
	end if
next
%>   

        </TBODY>
      </TABLE>
      <table width="280" border="0" cellpadding="0" cellspacing="0" height="40" valign="center">
          <tr align="right" > 
		    <td align="center"><input type="checkbox" name="allbox" onclick="SelectaAll();">全选&nbsp;&nbsp;<input type=Submit name=mysubmit value="批量删除" class="go-wenbenkuang"></td>
        </tr>
      </table>
		<br>
		<font color="red">(注:文件存放在服务器的"<%=server.mappath("\db")%>"目录下)</font>
		
      </td>
  </tr></form>
</table>
</body>
</html>
<%
set comObject=nothing
%>
<script language="javascript">
function recv(filen,page)
{
   if(confirm("严重警告:真的要恢复该数据库文件吗?")){
       window.location.href="bkdata.asp?method=rec&page="+page+"&filen="+filen;
   }
}

function delconfirm()
{
    var inum=0;
	var smsg="你确定要删除吗?";
	for (var i=0;i<document.frm_sys.elements.length;i++)
    {
    var e=document.frm_sys.elements[i];
    if (e.name!='allbox')
       { if (e.checked) {inum=inum+1;}}
    }
	if (inum==0) {
	   alert("请选择待删除记录!");
	   return false;
	}
	else{
       if(confirm(smsg))
	       return true;
	   else
	       return false;
	}
}
</script>

⌨️ 快捷键说明

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