create_softinfocls1.asp

来自「多用户管理分权限发布、管理软件信息;  自由选择系统默认为静态HTML或动态A」· ASP 代码 · 共 699 行 · 第 1/2 页

ASP
699
字号
<!--#include file="function.asp" -->
<%
Class Create_SoftInfo_Cls
	Private ErrMsg
	Private SucMsg
	Private Founderr
	Private Rs, SQL
	Private NewCloud_Ads
	Private HtmlTemplate
	Private SoftName
	Private SoftReadme
	Private SoftTime
	Private SoftSize
	Private MemberSoft
	Private isCommend
	Private MoneyNum
	Private AllHits
	Private Grades
	Private impower
	Private RunSystem
	Private SoftImg
	Private sortid
	Private SortName
	Private depth
	Private ParentID
	Private strParent
	Private PreviewImg
	Private PreviewPic
	Private strDecode
	Private Homepage
	Private SoftType
	Private Language
	Private Contact
	Private softid
	Private HtmlTempStr
	Private NowStats
	Private HtmlTitle
	Private TempTopStr
	Private TempFootStr
	Private Style_CSS
	Private datDate
	Private startime
	Private zyname
	Private i
	Private j
	Private Rs1
	Private p
	Private d
	Private maxperpage
	Private SoftTotal
	Private TotalPage
	Private SoftNumber
	Private totalnumber
	Private action
	Private Re
	Private Sub Class_Initialize()
		Founderr = False
		Set Rs = Server.CreateObject("ADODB.Recordset")
		Newasp.LoadTemplates ("softinfo")
		Set NewCloud_Ads = New Adcolumn_Cls
	End Sub

	Private Sub Class_Terminate()
		If IsObject(Conn) Then
			Conn.Close
			Set Conn = Nothing
		End If
		Set NewCloud_Ads = Nothing
		Set Newasp = Nothing
	End Sub

	Public Sub Init_CreateSoftInfo()
		Set NC_Admin = New Check
		NC_Admin.AdminChk = "32"
		NC_Admin.Check
		Server.ScriptTimeout = 99999
		If CInt(Newasp.Setting(5)) = 1 Then
			NC_Admin.Error_Msg ("对不起!你选择的是动态ASP程序,不能生成HTML文件,请在基本设置修改成静态HTML方能生成THML文件。")
			Exit Sub
		End If
		Newasp.admin_header
		action = Trim(Request("action"))
		Select Case action
			Case "Create"
				Call CreateSoftHtml
			Case "update"
				Call UpdateAllSoft
			Case Else
				Call CreateMain
		End Select
		Newasp.admin_footer
	End Sub

	Private Sub CreateMain()
		SQL = "select count(*) from NC_softinfo"
		Rs1 = Conn.Execute(SQL)
		SoftTotal = Rs1(0)
		Response.Write "<table width=""98%"" border=""0"" align=""center"" cellpadding=""5"" cellspacing=""1"" class=""tableBorder"">"
		Response.Write " <tr>" & Chr(13)
		Response.Write " <th colspan=""2"">批量生成软件下载HTML页</th></tr>"
		Response.Write " <tr>" & Chr(13)
		Response.Write " <td class=forumrow height=""32"" style=""LINE-HEIGHT: 150%; font-size: 10pt;"" colspan=""2"">"
		If Request("type") = "ok" Then
			Response.Write "操作成功:共生成页面<font color=""#FF0000"">" & Request("num") & "</font>个,总费时<font color=""#FF0000"">" & FormatNumber((Timer() - Request("D")), 2) & "</font>秒,完成时间" & Now() & ""
		End If
		Response.Write "</td>"
		Response.Write "</tr>"
		Response.Write " <tr><form name=""myform"" method=""post"" action=""?action=Create&type=date"">"
		Response.Write " <td class=forumrow height=""32"" width=""30%"">按日期生成下载Html页</td>"
		Response.Write " <td class=forumrow width=""70%"">"
		Response.Write " <select size=""1"" name=""datYear"">"
		For i = 2001 To Year(Date)
			Response.Write "<option value=""" & i & """"
			If i = Year(Date) Then
				Response.Write " selected"
			End If
			Response.Write ">" & i & "</option>"
		Next
		Response.Write " </select> - "
		Response.Write " <select size=""1"" name=""datMonth"">"
		For i = 1 To 12
			Response.Write "<option value=""" & i & """"
			If i = Month(Date) Then
				Response.Write " selected"
			End If
			Response.Write ">" & i & "</option>"
		Next
		Response.Write " </select> - "
		Response.Write " <select size=""1"" name=""datDay"">"
		For i = 1 To 31
			Response.Write "<option value=""" & i & """"
			If i = Day(Date) Then
				Response.Write " selected"
			End If
			Response.Write ">" & i & "</option>"
		Next
		Response.Write " </select> "
		Response.Write "<input type=""submit"" class=button name=""Submit"" value=""生成HTML页""></td>"
		Response.Write " </tr></form>"
		Response.Write " <tr><form name=myform method=""post"" action=""?action=Create&type=new"">"
		Response.Write " <td class=forumrow height=""22"">按个数生成下载Html页</td>"
		Response.Write " <td class=forumrow><input size=10 name=""newnum"" value=""1""> <input type=""submit"" name=""Submit"" class=button value=""生成HTML页""> *将按最近更新的顺序生成</td>"
		Response.Write " </tr></form>"
		Response.Write " <tr><form name=myform method=""post"" action=""?action=Create&type=seid"">"
		Response.Write " <td class=forumrow height=""22"">按软件ID生成下载Html页</td>"
		Response.Write " <td class=forumrow>开始ID:<input size=6 name=""StartID"" value=""1""> 结束ID:<input size=6 name=""EndID"" value=""10"">  <input type=""submit"" name=""Submit"" class=button value=""生成HTML页""> </td>"
		Response.Write " </tr></form>"
		Response.Write " <tr><form name=""myform"" method=""post"" action=""?action=Create"">"
		Response.Write " <td class=forumrow height=""22"">生成全部下载HTML页</td>"
		Response.Write " <td class=forumrow><input type=""submit"" class=button name=""Submit"" value=""生成HTML页""> "
		Response.Write " <input type=radio name=type checked value=""update""> 生成已更新"
		Response.Write " <input type=radio name=type value=""all""> 生成全部"
		Response.Write "</td></form>"
		Response.Write " </tr>"
		Response.Write " <tr><form name=""myform"" method=""post"" action=""?action=update"">"
		Response.Write " <td class=forumrow height=""22"">更新全部软件</td>"
		Response.Write " <td class=forumrow> <input type=""submit"" class=button name=""Submit"" value=""更新全部软件""> "
		Response.Write "</td></form>"
		Response.Write " </tr>"
		Response.Write " <tr>"
		Response.Write " <td colspan=""2"" align=""center"" noWrap class=forumrow height=""22"">"
		Response.Write " <input type=""button"" class=button name=""Submit1"" onclick=""javascript:location.href='Create_Index.Asp'"" value=""生成下载首页"">"
		Response.Write " <input type=""button"" class=button name=""Submit2"" onclick=""javascript:location.href='Create_LateNew.Asp'"" value=""生成更新软件"">"
		Response.Write " <input type=""button"" class=button name=""Submit3"" onclick=""javascript:location.href='Create_Commend.Asp'"" value=""生成推荐软件"">"
		Response.Write " <input type=""button"" class=button name=""Submit4"" onclick=""javascript:location.href='Create_HotSoft.Asp'"" value=""生成热门软件"">"
		Response.Write " <input type=""button"" class=button name=""Submit5"" onclick=""javascript:location.href='Create_HotTopJs.asp'"" value=""生成排行JS"">"
		Response.Write "</td>"
		Response.Write " </tr>"
		Response.Write " <tr>"
		Response.Write " <td align=""center"" class=forumrow height=""22"" style=""LINE-HEIGHT: 150%; font-size: 10pt;"" colspan=""2"">"
		Response.Write " (共有软件 <font color=""#FF3300""><B>"
		Response.Write SoftTotal
		Response.Write "</B></font> 个)"
		Response.Write "</td>"
		Response.Write "</tr></table>"
	End Sub

	Private Sub CreateSoftHtml()
		If CLng(Request.Form("StartID")) > CLng(Request.Form("EndID")) Then
			Response.Write ("<script>alert('对不起!你输入的开始ID比结束ID大,请重新输入。');history.go(-1)</script>")
			Exit Sub
		End If
		Response.Write "<b><font color=""RED"">正在生成软件下载页的HTML文件,请稍候......</font></b><BR>" & vbCrLf
		Response.Write "<table width=""400"" border=""0"" cellspacing=""1"" cellpadding=""1"">" & vbCrLf
		Response.Write "<tr> " & vbCrLf
		Response.Write "<td bgcolor=000000>" & vbCrLf
		Response.Write " <table width=""400"" border=""0"" cellspacing=""0"" cellpadding=""1"">" & vbCrLf
		Response.Write "<tr> " & vbCrLf
		Response.Write "<td bgcolor=ffffff height=9><img src=""images/bar9.gif"" width=0 height=16 id=img2 name=img2 align=absmiddle></td></tr></table>" & vbCrLf
		Response.Write "</td></tr></table></td></tr><tr> " & vbCrLf
		Response.Write "<td align=center bgcolor=000000> <span id=txt2 name=txt2 style=""font-size:9pt"">0</span><span style=""font-size:9pt"">%</span>  <span id=txt3 name=txt3 style=""font-size:9pt"">0</span></td></tr>" & vbCrLf
		Response.Write "</table>" & vbCrLf
		Response.Flush
		Set Rs1 = Server.CreateObject("adodb.recordset")
		startime = Timer
		If Request("type") = "date" Then
			If isSqlDataBase = 1 Then
				datDate = "" & Request("datYear") & "-" & Request("datMonth") & "-" & Request("datDay") & ""
				SQL = "select softid,SoftName,SoftVer from [NC_softinfo] where datediff(d,SoftTime,getdate())=" & DateDiff("d", datDate, Now()) & " order by softid desc"
			Else
				datDate = "" & Request("datYear") & "-" & Request("datMonth") & "-" & Request("datDay") & ""
				SQL = "select softid,SoftName,SoftVer from [NC_softinfo] where softTime like '%" & datDate & "%' order by softid desc"
			End If
		End If
		If Request("type") = "new" Then
			If Request("newnum") > 0 And Len(Request("newnum")) <> 0 Then
				SQL = "select top " & CInt(Request("newnum")) & " softid,SoftName,SoftVer from NC_softinfo order by softTime desc,softid desc"
			Else
				Response.Write "<meta http-equiv=""refresh"" content=""0;url='" & Request.ServerVariables("HTTP_REFERER") & "'"">"
			End If
		End If
		If Request("type") = "all" Then
			SQL = "select softid,SoftName,SoftVer from NC_softinfo order by softid desc"
		End If
		If Request("type") = "update" Then
			SQL = "select softid,SoftName,SoftVer from NC_softinfo where isUpdate=1 order by softid desc"
		End If
		If Request("type") = "seid" Then
			SQL = "select softid,SoftName,SoftVer from NC_SoftInfo where softid >= " & Request("StartID") & " and softid <= " & Request("EndID") & " order by softid desc"
		End If
		If Request("p") <> "" Then
			p = CLng(Request("p"))
			d = Request("D")
		Else
			p = 1
			d = startime
		End If
		maxperpage = 100
		Rs1.Open SQL, Conn, 1, 1
		If Not Rs1.EOF Then
			Rs1.pagesize = maxperpage '得到每页数
			TotalPage = Rs1.pagecount '得到总页数
			SoftTotal = Rs1.recordcount '得到总数
			Rs1.MoveFiRst
			Rs1.Move (p - 1) * maxperpage
			j = (p - 1) * maxperpage + 1
			Do While Not Rs1.EOF
				CreateSoftInfo (Rs1("softid"))
				Newasp.Execute ("update NC_Softinfo set isUpdate = 0 where softid=" & Rs1("softid"))
				i = i + 1
				Response.Write "<script>img2.width=" & Fix((i / maxperpage) * 400) & ";" & vbCrLf
				Response.Write "txt2.innerHTML=""完成进度:" & FormatNumber(i / maxperpage * 100, 2, -1) & """;" & vbCrLf
				Response.Write "txt3.innerHTML=""  共有软件 <B><font color=RED>" & SoftTotal & "</font></B> 个  正在生成第 " & j & " 个"";" & vbCrLf
				Response.Write "img2.title=""(" & i & ")"";</script>" & vbCrLf
				Response.Flush
				Response.Write "<table cellpadding=0 cellspacing=0 border=0 width=90% align=center><tr><td colspan=2 class=forumrow>   生成软件 [" & Rs1(1) & "  " & Rs1(2) & "] 完成。</td></tr></table>"
				Response.Flush
				If i >= maxperpage Then Exit Do
				Rs1.movenext
				j = j + 1
			Loop
		End If
		Rs1.Close
		SoftNumber = maxperpage * p - maxperpage + 1
		totalnumber = SoftNumber + i - 1
		If SoftTotal < SoftNumber Then
			Set Rs1 = Nothing
			Response.Write "<script>img2.width=400;txt2.innerHTML=""100"";</script>"
			Response.Write "<meta http-equiv=""refresh"" content=""0;url='?type=ok&num=" & Request("num") & "&D=" & d & "&p=" & p + 1 & "'"">"
		Else
			Response.Write "<script>img2.width=400;txt2.innerHTML=""100"";</script>"
			Response.Write "<meta http-equiv=""refresh"" content=""0;url='?action=Create&type=" & Request("type") & "&seid=" & Request("seid") & "&StartID=" & Request("StartID") & "&EndID=" & Request("EndID") & "&update=" & Request("update") & "&newnum=" & Request("newnum") & "&datYear=" & Request("datYear") & "&datMonth=" & Request("datMonth") & "&datDay=" & Request("datDay") & "&num=" & totalnumber & "&D=" & d & "&p=" & p + 1 & "'"">"
		End If
	End Sub

	Public Function CreateSoftInfo(softid)
		If Not IsNumeric(softid) And softid <> "" Then
			Response.Write "错误的系统参数!ID必须是数字"
			Response.End
		Else
			softid = CLng(softid)
		End If
		Set Rs = Server.CreateObject("adodb.recordset")
		SQL = "select * from NC_SoftInfo where isLock=0 and softid = " & softid
		Rs.Open SQL, Conn, 1, 1
		If Rs.bof And Rs.EOF Then
			Response.Write = "<p align=center>还没有找到任何软件!</p>"
			Exit Function
		Else
			If CInt(Rs("isMember")) = 0 Then
				MemberSoft = ""
			Else
				MemberSoft = Newasp.TempSet(3)
			End If
			If CInt(Rs("isCommend")) = 0 Then
				isCommend = ""
			Else
				isCommend = "<font color=red>推荐</font>"
			End If
			SoftName = Trim(Rs("SoftName")) & Trim(Rs("SoftVer"))
			If Rs("SoftSize") > 1024 Then
				SoftSize = Round(Rs("SoftSize") / 1024, 2) & " MB"
			Else
				SoftSize = Rs("SoftSize") & " KB"
			End If
			If Rs("MoneyNum") = 0 Or Len(Rs("MoneyNum")) = 0 Then
				MoneyNum = ""
			Else
				MoneyNum = Rs("MoneyNum")
			End If
			sortid = Rs("sortid")
			SoftReadme = Rs("content")
			Set Re = New RegExp
			Re.IgnoreCase =true
			Re.Global=True
			If CInt(Newasp.Setting(44)) = 1 Then
				Re.Pattern="\[br\]"
				SoftReadme = Re.Replace(SoftReadme,"<BR>")
				Re.Pattern="\[align=right\]"
				SoftReadme = Re.Replace(SoftReadme,"<div align=right>")
				Re.Pattern="\[\/align\]"
				SoftReadme = Re.Replace(SoftReadme,"</div>")
			Else
				Re.Pattern="\[br\]"
				SoftReadme = Re.Replace(SoftReadme,"")
				Re.Pattern="\[align=right\](.*)\[\/align\]"
				SoftReadme = Re.Replace(SoftReadme,"")
			End If
			Set Re = Nothing
			SoftTime = Rs("SoftTime")
			AllHits = Rs("Hits")
			Grades = Rs("Grades")
			impower = Rs("zhuyan")
			RunSystem = Rs("RunSystem")
			SoftType = Trim(Rs("softType"))
			Language = Trim(Rs("Language"))
			Homepage = Trim(Rs("Homepage"))
			Contact = Trim(Rs("Contact"))
			strDecode = Trim(Rs("Decode"))
			zyname = Trim(Rs("zhuyan"))
			
			SoftImg = Rs("softimg")
			If Not IsNull(Trim(Rs("PreviewImg"))) And Trim(Rs("PreviewImg")) <> "" Then
				PreviewImg = "<a href='" & Newasp.SetupDir & "PreviewImg.asp?SoftID=" & softid & "' target='_blank'><img src='" & Newasp.SetupDir & "images/screen.gif' border='0' align='absmiddle' title='查看预览图'>"
				PreviewPic = "<img src='http://imageso.xunlei.com/movie_pic/"& Trim(Rs("PreviewImg")) &"' border='0'>"
			Else
				PreviewImg = "没有预览图片"
				PreviewPic = "没有预览图片"
			End If

		End If
		Rs.Close
		Set Rs = Server.CreateObject("adodb.recordset")
		SQL = "select sortid,rootid,sortname,depth,ParentID,strParent from [NC_SoftSort] where sortid = " & sortid
		Rs.Open SQL, Conn, 1, 1
		If Rs.bof And Rs.EOF Then
			Response.Write "Sorry!没有找到任何软件信息。或者您选择了错误的系统参数!"
			Response.End
		Else
			SortName = Rs("sortname")

⌨️ 快捷键说明

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