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

📄 refreshsave.asp

📁 asp源码 图片ASP整站
💻 ASP
字号:
<% Option Explicit %>
<!--#include file="../../../Inc/Const.asp" -->
<!--#include file="../../../Inc/Cls_DB.asp" -->
<!--#include file="../../../Inc/Cls_Cache.asp" -->
<!--#include file="../../../Inc/Function.asp" -->
<!--#include file="Cls_Refresh.asp" -->
<%
Dim DBC,Conn
Set DBC = New DataBaseClass
Set Conn = DBC.OpenConnection()
Set DBC = Nothing
%>
<!--#include file="../../../Inc/Session.asp" -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>
<script language="JavaScript">
function Refresh_Info(Type,Count,Sql)
{
	this.Type=Type;
	this.Count=Count;
	this.Sql=Sql;
}
function Save_Refresh_Info(Type,Count,Sql)
{
	var Obj=new Refresh_Info(Type,Count,Sql);
	Refresh_Infos[Refresh_Infos.length]=Obj;
}
var Refresh_Infos=new Array();
</script>
<link rel="stylesheet" href="../../../CSS/FS_css.css">
<body topmargin="2" leftmargin="2" oncontextmenu="return false;">
<div style="z-index:-1;width:100%;height:28px;background:#EEEEEE;border:1px solid #999999; text-align:center;padding:6px;"> 
  生成中请不要刷新此页面 </div>
<br>
<div id="SpliderBar_Parent" style="z-index:-1;width:100%;height:22px;background:#EEEEEE;border:1px solid #999999; text-align:left;padding:2px;">
<img id="SpliderBar" src="../../Images/Visit/count.gif" width="0" height=20></div>
<div id="Current_Status" style="z-index:-1;width:100%;height:12px;background:#EEEEEE;border:0px solid #999999; text-align:center;padding:2px;text-align:left;"></div>
<div id="Show_Refresh_Info" style="z-index:-1;width:100%;height:12px;background:#EEEEEE;border:0px solid #999999; text-align:center;padding:2px;text-align:left;"></div>
<div id="Show_Refresh_End_Info" style="z-index:-1;width:100%;height:12px;background:#EEEEEE;border:0px solid #999999; text-align:center;padding:2px;text-align:left;"></div>
<br>
<iframe name="Refresh_Frame" src="RefreshOne.asp" ID="Refresh_Frame" MARGINHEIGHT="1" MARGINWIDTH="1" HEIGHT="200" width="100%" scrolling="yes"></iframe>
</body>
</html>
<%
Dim ReFreshIndex,RefreshClass,RefreshNews,ReFreshSpecial,ReFreshDownload,ReFreshProduct
Dim ClassStr,SpecialStr,ClassSql,SpecialSql
Dim All_Refresh_Num,Rs_Refresh_Count_Obj
Dim Refresh_Sql,Refresh_Index,Refresh_Type,New_News,ReFreshAsid

Dim NewNumStr
All_Refresh_Num = 0
ReFreshIndex	=Request.Form("Index")
RefreshClass	=Request.Form("AllClass")
ReFreshSpecial	=Request.Form("AllSpecial")
RefreshNews 	=Request.Form("AllNews")
ReFreshDownload	=Request.Form("AllDownload")
ReFreshProduct 	=Request.Form("AllProduct")
'ashui 
ReFreshAsid     =Request.QueryString("AshuiSCid")
'==========================================================
'保存生成首页信息
If ReFreshIndex="1" Then
	All_Refresh_Num = All_Refresh_Num + 1
	Save_Refresh_Info "Index",1,""
End If
'==========================================================
'记录栏目生成信息
If RefreshClass<>"1" Then
	ClassStr=Request.Form("ClassStr")
		If ClassStr<>"" Then
		ClassStr="'"&Replace(ClassStr,", ","','")&"'"
		If ClassStr<>"" Then 
			ClassSql="select Count(ID) From FS_NewsClass Where DelFlag=0 And IsOutClass=0 And ClassID in("&ClassStr&")"
			Refresh_Sql = " DelFlag=0 And IsOutClass=0 And ClassID in("&ClassStr&")"
		Else
			ClassSql=""
		End If
	Else
	 if ReFreshAsid<>"" then
         ClassStr=ReFreshAsid
         ClassSql="Select Count(ID) From FS_NewsClass Where DelFlag=0 And IsOutClass=0 and ClassID ='"&ClassStr&"'"
         Refresh_Sql = " DelFlag=0 And IsOutClass=0 And ClassID ='"&ClassStr&"'"
         else
		ClassSql=""
		end if
	End If
Else
	ClassSql="Select Count(ID) From FS_NewsClass Where DelFlag=0 And IsOutClass=0"
	Refresh_Sql = " DelFlag=0 And IsOutClass=0"
End If
If ClassSql<>"" Then
	Set Rs_Refresh_Count_Obj = Conn.Execute(ClassSql)
	All_Refresh_Num = All_Refresh_Num + Rs_Refresh_Count_Obj(0)
	Refresh_Sql = Server.URLEncode(Refresh_Sql)
	Save_Refresh_Info "Class",Rs_Refresh_Count_Obj(0),Refresh_Sql
	Set Rs_Refresh_Count_Obj =Nothing
End If
'=========================================================
'记录专题生成信息
If ReFreshSpecial<>"1" Then
	SpecialStr=Request.Form("SpecialStr")
	If SpecialStr<>"" Then
		SpecialStr="'"&Replace(SpecialStr,", ","','")&"'"
		If SpecialStr<>"" Then 
			SpecialSql="select Count(ID) From FS_Special Where SpecialID In("&SpecialStr&")"
			Refresh_Sql = " SpecialID In("&SpecialStr&")"
		Else
			SpecialSql=""
		End If
	Else
		SpecialSql=""
	End If
Else
	SpecialSql="select Count(ID) From FS_Special"
	Refresh_Sql = " 1=1"
End If
If SpecialSql<>"" Then
	Set Rs_Refresh_Count_Obj = Conn.Execute(SpecialSql)
	All_Refresh_Num = All_Refresh_Num + Rs_Refresh_Count_Obj(0)
	Refresh_Sql = Server.URLEncode(Refresh_Sql)
	Save_Refresh_Info "Special",Rs_Refresh_Count_Obj(0),Refresh_Sql
	Set Rs_Refresh_Count_Obj =Nothing
End If
'======================================================
'记录新闻生成信息
Call GetParaAndSave("News","FS_News","DelTF=0 And AuditTF=1 And HeadNewsTF=0","AddDate")
'记录下载生成信息
Call GetParaAndSave("Download","FS_Download","AuditTF=1","AddTime")
'记录商品生成信息
Call GetParaAndSave("Product","FS_Shop_Products","IsLock=0","Products_AddTime")

Sub GetParaAndSave(TypeStr,TableName,WhereStr,TimeColumn)
	Dim DateStr,NewStr,IDStr,FromDateStr,TentDateStr,SqlStr
	If eval("Refresh" & TypeStr) <> "1" Then						'如果不是生成所有
		DateStr		=Request.Form("Date" & TypeStr)
		NewStr		=Request.Form("New" & TypeStr)
		IDStr		=Request.Form(TypeStr & "Str")
		FromDateStr	=Request.Form(TypeStr & "FromDate")&" 00:00:01"
		TentDateStr	=Request.Form(TypeStr & "TentDate")&" 23:59:59"
		If NewStr="1" Then
			NewNumStr=CLng(Request.Form(TypeStr & "Num"))
			if Not IsNumeric(NewNumStr) then NewNumStr = 10
			SqlStr="select Top "& NewNumStr &" Count(ID) From "&TableName&" Where " & WhereStr
			Refresh_Sql = " " & WhereStr
		End If
		If (DateStr<>"" Or IDStr<>"") And NewStr <> "1" Then
			SqlStr="select Count(ID) From "&TableName&" Where " & WhereStr
			Refresh_Sql = " " & WhereStr
		End If
			
		If DateStr="1" Then
			If IsSqlDataBase=0 Then
				SqlStr=SqlStr & " And "&TimeColumn&">=#"&FromDateStr&"# And "&TimeColumn&"<=#"&TentDateStr&"#"
				Refresh_Sql = Refresh_Sql & " And "&TimeColumn&">=#"&FromDateStr&"# And "&TimeColumn&"<=#"&TentDateStr&"#"
			Else
				SqlStr=SqlStr&" And "&TimeColumn&">='"&FromDateStr&"' And "&TimeColumn&"<='"&TentDateStr&"'"
				Refresh_Sql = Refresh_Sql & " And "&TimeColumn&">='"&FromDateStr&"' And "&TimeColumn&"<='"&TentDateStr&"'"
			End If
		End If
	
		If IDStr<>"" Then
			IDStr="'"&Replace(IDStr,", ","','")&"'"
			If IDStr<>"" Then 
				SqlStr=SqlStr&" And ClassID In("&IDStr&")"
				Refresh_Sql = Refresh_Sql & " And ClassID In("&IDStr&")"
			End If
		End If
	Else
		SqlStr="select Count(ID) From "&TableName&" Where "& WhereStr
		Refresh_Sql = " " & WhereStr
	End If
	If NewStr <> "1" Then NewNumStr = ""
	If SqlStr<>"" Then
	'2006-5-22
		Set Rs_Refresh_Count_Obj = Conn.Execute(SqlStr)
		If NewStr = "1" Then
			If  Rs_Refresh_Count_Obj(0) > NewNumStr Then
				All_Refresh_Num = All_Refresh_Num + NewNumStr
				Refresh_Sql = Server.URLEncode(Refresh_Sql)
				Save_Refresh_Info TypeStr,NewNumStr,Refresh_Sql
			Else
				All_Refresh_Num = All_Refresh_Num + Rs_Refresh_Count_Obj(0)
				Refresh_Sql = Server.URLEncode(Refresh_Sql)
				Save_Refresh_Info TypeStr,Rs_Refresh_Count_Obj(0),Refresh_Sql
			End If
		Else
			All_Refresh_Num = All_Refresh_Num + Rs_Refresh_Count_Obj(0)
			Refresh_Sql = Server.URLEncode(Refresh_Sql)
			Save_Refresh_Info TypeStr,Rs_Refresh_Count_Obj(0),Refresh_Sql
		End If
		Set Rs_Refresh_Count_Obj =Nothing
	'=========
	End If
End Sub

Function Save_Refresh_Info(f_RefreshType,f_Refresh_Num,f_Refresh_Sql)
	f_Refresh_Sql = Server.HTMLEncode(f_Refresh_Sql)
	%><script language="JavaScript">Save_Refresh_Info('<% = f_RefreshType %>','<% = f_Refresh_Num %>','<% = f_Refresh_Sql %>');</script><%
End Function

%>
<script language="JavaScript">
var NewsNum='<% = NewNumStr %>';
var Old_ID='';
var RefreshOnceNum=<% = RefreshOnceNum %>;
var End_Flag=false;
var Loop_Flag=true;
var Refresh_Infos_i=0;
var All_Refresh_Num = <% = All_Refresh_Num %>;
var All_Refresh_Index=0;
var One_Refresh_Index=0;
var One_Refresh_Count=0
var All_Width=document.all.SpliderBar_Parent.clientWidth-4;
var Refresh_Interval_ID=setInterval('Refresh();',1000);
function Update_Refresh_Para()
{
	One_Refresh_Count=Refresh_Infos[Refresh_Infos_i].Count;
	if (One_Refresh_Index>=One_Refresh_Count)
	{
		Refresh_Infos_i++;
		if (Refresh_Infos_i<=(Refresh_Infos.length-1))
		{
			One_Refresh_Count=Refresh_Infos[Refresh_Infos_i].Count;
			One_Refresh_Index=0;
			Old_ID ='';
		}
		else
		{
			End_Flag=true;
			return;
		}
	}
}

function Refresh()
{
	var SpliderBarObj=document.all.SpliderBar;
	var Refresh_Frame_Obj=document.all.Refresh_Frame;
	var re;
	re=/and/gi;
	var tempsql;
	//2006-4-27
	var btn_Return_Str='    <a href=RefreshManager.asp><font color="red"><strong>返 回</strong></font></a>      <a href=<%=Get_RootDir%>/Index.<%=GetConfig(18)%> target="_blank"><font color="red"><strong>浏览首页</strong></font></a>';
	//2006-4-27
	var Src=''
	if (Refresh_Infos.length==0)
	{
		SpliderBarObj.width=All_Width;
		document.all.Current_Status.innerHTML='&nbsp;&nbsp;没有要生成的内容,'+btn_Return_Str;
		clearInterval(Refresh_Interval_ID);
		return;
	}
	Update_Refresh_Para();
	if ((End_Flag)||(!Refresh_Infos[Refresh_Infos_i]))
	{
		SpliderBarObj.width=All_Width;
		clearInterval(Refresh_Interval_ID);
		document.all.Show_Refresh_Info.innerHTML='&nbsp;&nbsp;生成结束,'+btn_Return_Str;
		return;
	}
	if ((Loop_Flag)&&(!End_Flag))
	{
		Loop_Flag=false;
		Src='ReFreshOne.asp';
		Src+='?Type='+Refresh_Infos[Refresh_Infos_i].Type;
		Src+='&Index='+One_Refresh_Index;
		Src+='&NewsNum='+NewsNum;
		tempsql = Refresh_Infos[Refresh_Infos_i].Sql.replace(re,'F_he_F');
		tempsql =tempsql.replace('%27','F_dyh_F');
		Src+='&Sql='+tempsql;
		Src+='&ID='+Old_ID;
		Refresh_Frame_Obj.src=Src;
		if (All_Refresh_Index+RefreshOnceNum>All_Refresh_Num) All_Refresh_Index=All_Refresh_Num;
		else All_Refresh_Index+=RefreshOnceNum;
		if (One_Refresh_Index+RefreshOnceNum>One_Refresh_Count) One_Refresh_Index=One_Refresh_Count;
		else One_Refresh_Index+=RefreshOnceNum;
		document.all.Current_Status.innerHTML='<br><strong>&nbsp;&nbsp;当前进度</strong>    总共:'+All_Refresh_Num+'条,已经完成:'+All_Refresh_Index+'条     生成完成前,请不要手动刷新此页!';
		SpliderBarObj.width=((All_Refresh_Index)/All_Refresh_Num)*All_Width;
	}
}

function setFlag(f_ID,Err_Info)
{
	var Show_Info='';
	Err_Info=unescape(Err_Info);
	var btn_Return_Str='  <a href=RefreshManager.asp><font color="red"><strong>返 回</strong></font></a>';
	Old_ID=f_ID;
	Loop_Flag=true;
	var f_Array=Err_Info.split('###'),f_Child_Array;
	for (var f_i=0;f_i<f_Array.length;f_i++)
	{
		f_Child_Array=f_Array[f_i].split('***');
		if (f_Child_Array.length==3)
		{
			if (Show_Info=='') Show_Info='&nbsp;&nbsp;'+f_Child_Array[0]+':  <font color="red">'+f_Child_Array[1]+'</font>    '+f_Child_Array[2]+'    '+btn_Return_Str+'<br><br>';
			else  Show_Info=Show_Info+'&nbsp;&nbsp;'+f_Child_Array[0]+':  <font color="red">'+f_Child_Array[1]+'</font>    '+f_Child_Array[2]+'    '+btn_Return_Str+'<br><br>';
		}
	}
	document.all.Show_Refresh_Info.innerHTML=document.all.Show_Refresh_Info.innerHTML+Show_Info;
}
</script>

⌨️ 快捷键说明

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