当前位置: 首页 > 图文教程 > 网络编程 > ASP > 生成所有页面的效果+分页生成

ASP
ASP调用ORACLE存储过程并返回结果集
用ASP实现网页BBS
关于Global.asa文件的深入研究与session变量失效提示的具体方法
简易ASP+注册系统
防护手册:如何防止ASP木马在服务器上运行
用Visual Basic实现多画面播放功能之二
如何增强ASP程序性能(1)
如何增强ASP程序性能(2)
如何增强ASP程序性能(3)
ASP备份数据库
二十八条改善 ASP 性能和外观的技巧
在Form域中Post大于100K的数据
如何使用ASP制作模似动态生长的表单?
Microsoft IIS 真的如此「不安全」吗?(1)
Microsoft IIS 真的如此「不安全」吗?(2)
Microsoft IIS 真的如此「不安全」吗?(3)
Microsoft IIS 真的如此「不安全」吗?(4)
Microsoft IIS 真的如此「不安全」吗?(5)
关于页面和代码分离
ServerVariables 对路径的操作

ASP 中的 生成所有页面的效果+分页生成


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 158 ::
收藏到网摘: n/a

复制代码 代码如下:

<!--#include file="conn.asp"-->
<style type="text/css">
body,td,th{
color:#000000;
font-size:14px;
background-color:#D6DFF7;
}
</style>
<%
dim rs
set rs=server.CreateObject("adodb.recordset")
if request("type")="date" then
yearstr=request("selyear")
monstr=request("selmonth")
daystr=request("selday")
if daystr<>"" then
theymd=yearstr&"-"&monstr&"-"&daystr
sql="select id from news where datetime like '"&theymd&"%' order by datetime desc"
else
theymd=yearstr&"-"&monstr&"-"
sql="select id from news where datetime like '"&theymd&"%' order by datetime desc"
end if
elseif request("type")="new" then
topnew=request("newcount")
if topnew<>"" then
topnew=cint(topnew)
sql="select top "&topnew&" id from news order by datetime desc"
end if
elseif request("type")="nosh" then
sql="select id from news where shengcheng=0"
elseif request("type")="all" then
sql="select id from news order by id desc"
end if
if sql<>"" then
response.write sql
response.write"<center><b><font color=""#FF0000"">正在生成文章内容页的Html页,请等待......</font></b><span id=showImport></span></center><IE:Download ID=""oDownload"" STYLE=""behavior:url(#default#download)"" />"
if request("p")<>"" then
p=cint(request("p"))
else
p=1
end if
MaxPerPage=100
rs.open sql,conn,1,1
if not rs.eof then
rs.pagesize=MaxPerPage '得到每页数
mpage=rs.pagecount '得到总页数
allshu=rs.recordcount '得到总数
rs.move (p-1)*MaxPerPage
do while not rs.eof
i=i+1
call MakeHtml()
if i>=MaxPerPage then exit do
rs.movenext
loop
end if
rs.close
Sshu=MaxPerPage*p-MaxPerPage+1 '当前已经生成的数量
Tshu=Sshu+i-1 '已生成生成的
if allshu<Sshu then
set rs=nothing
conn.close
set conn=nothing
response.redirect "makehtmlall.asp?type=ok"&"&shu="&request("shu")&"&D="&d&"&p="&p+1
response.end
else
%>
<meta http-equiv="refresh" content="0;url=makehtmlall.asp?type=<%=request("type")%>&newcount=<%=request("newcount")%>&selyear=<%=request("selyear")%>&selmonth=<%=request("selmonth")%>&selday=<%=request("selday")%>&shu=<%=Tshu%>&D=<%=D%>&p=<%=p+1%>">
<div align="center"><br>正在生成:第(<%=Sshu%>/<%=Tshu%>)个 共<%=allshu%>个</div>
<%
end if
Sub MakeHtml()
%>
<script>function onDownloadDone(downDate){showImport.innerHTML=downDate}oDownload.startDownload('makehtml.asp?news_id=<%=rs("id")%>',onDownloadDone)
</script>
<%
end Sub
'-----------------------sql为空-------------------
else
set rstotal=conn.execute("select count(*) from news")
nowtotal=rstotal(0)
rstotal.close
set rstotal=nothing
set nosh=conn.execute("select count(*) from news where shengcheng=0")
nownosh=nosh(0)
nosh.close
set nosh=nothing
'-------------------
if request("type")="ok" then
%><div align="center">
<br><br>操作成功:共生成页面
<font color="#FF0000"><%=request("shu")%></font>个,完成时间<%=now()%>
</center>
<%
end if
'-------------------------
%>
<table width="511" border="0" align="center" cellpadding="10" cellspacing="1" bgcolor="#FFFFFF">
<form action="makehtmlall.asp?type=date" method="post"><tr>
<td width="99" height="25" nowrap bgcolor="#D6DFF7">按日期生成:</td>
<td width="369" nowrap bgcolor="#D6DFF7"><select name="selyear">
<%
for yearstr=2001 to year(date)
if yearstr=year(date) then
response.write "<option value="&yearstr&" selected>"&yearstr&"</option>"
else
response.write "<option value="&yearstr&">"&yearstr&"</option>"
end if
next
%>
</select>-
<select name="selmonth">
<%
for monstr=1 to 12
if monstr=month(date) then
response.write "<option value="&monstr&" selected>"&monstr&"</option>"
else
response.write "<option value="&monstr&">"&monstr&"</option>"
end if
next
%>
</select>-
<select name="selday">
<option value=""""> </option>
<%
for daystr=1 to 31
if daystr=day(date) then
response.write "<option value="&daystr&" selected>"&daystr&"</option>"
else
response.write "<option value="&daystr&">"&daystr&"</option>"
end if
next
%>
</select>
<input type="submit" name="Submit" value="生成"></td>
</tr>
</form>
<form action="makehtmlall.asp?type=new" method="post">
<tr>
<td height="25" nowrap bgcolor="#D6DFF7">按最新的生成:</td>
<td nowrap bgcolor="#D6DFF7">生成最新的
<input name="newcount" type="text" id="newcount" size="10">
个文章
<input type="submit" name="Submit2" value="生成"></td>
</tr>
</form>
<form action="makehtmlall.asp?type=nosh" method="post">
<tr>
<td height="25" nowrap bgcolor="#D6DFF7">没有生成过的:</td>
<td nowrap bgcolor="#D6DFF7">当前需要生成文章[<font color="red"><%=nownosh%></font>]
<input type="submit" name="Submit4" value="生成"></td>
</tr>
</form>
<form action="makehtmlall.asp?type=all" method="post">
<tr>
<td height="25" nowrap bgcolor="#D6DFF7">生成全部:</td>
<td nowrap bgcolor="#D6DFF7">共[<font color="red"><%=nowtotal%></font>]
<input type="submit" name="Submit3" value="生成"></td>
</tr>
</form>
</table>
<%
end if
%>