推荐:学ASp动态网页必备:常用的38个函数1.函数array() 功能:创建一个数组变量 格式:array(list) 参数:list 为数组变量中的每个数值列,中间用逗号间隔 例子: <% i = array (1,2,3&quo
由于本人的空间收到限制,不能一次批量生成所有的静态页,所以自己写了一个小程序和大家分享,程序相当简单,高手莫要见笑!此代码就是很浪费时间.代码如下
| <!--#include file=conn.asp--> <HTML><HEAD><TITLE>生成页面</TITLE> <META http-equiv=Content-Type content=text/html; charset=gb2312> <LINK href=style.css type=text/css rel=stylesheet> <META content=MSHTML 6.00.2900.3020 name=GENERATOR> </HEAD> <BODY bottomMargin=0 leftMargin=0 topMargin=0 rightMargin=0> <BR style=OVERFLOW: hidden; LINE-HEIGHT: 3px> <% dim id id=cint(request.querystring(id)) if id= then id=1 else id=cint(request.querystring(id)) end if Dim totalnumber sql=select id from table order by id DESC set rs=server.createobject(adodb.recordset) rs.open sql,conn,1,1 rs.Movefirst if not rs.eof then TotalNumber=rs.recordcount end if 获取总数可以用一句代码代替,这个相信朋友自己可以解决. rs.close set rs=nothing Response.Write <br><br> & vbNewLine Response.Write <table width='400' border='0' align='center' cellpadding='0' cellspacing='0'> & vbNewLine Response.Write <tr> & vbNewLine Response.Write <td height='50'>总共 <font color='blue'><b> & totalnumber & </b></font> 个页面,正在生成第 <font color='red'><b> & ID & </b></font> 个页面…… </td> & vbNewLine Response.Write </tr> & vbNewLine Response.Write </table> & vbNewLine Response.Flush If ID > totalnumber Then Response.Write 恭喜您操作成功! Response.Flush End If creat(ID) id=id 1 Response.Write <meta http-equiv=refresh content=1;url=?ID=&id&> %> </BODY> </HTML> <% Function creat(id) sql=SELECT * from table where id=&ID set rs=conn.execute(sql) dim name name=rs(name) conn.execute(sql) rs.close set rs=nothing dim fso dim znwl dim art dim fw set fso=createobject(scripting.filesystemobject) set znwl=fso.opentextfile(server.mappath(模板页)) art=znwl.readall znwl.close art=replace(art,{$name$},name) set fw=fso.createtextfile(server.mappath(生成页存放位置及页面名称),true) fw.writeline art fw.close set fso=nothing End Function %> |
另外还有一种方法比上面的方法快,但是占用CPU比较多,我的空间用下面的方法老出问题
| <!--#include file=conn.asp--> <HTML><HEAD><TITLE>生成页面</TITLE> <META http-equiv=Content-Type content=text/html; charset=gb2312> <LINK href=style.css type=text/css rel=stylesheet> <META content=MSHTML 6.00.2900.3020 name=GENERATOR> </HEAD> <BODY bottomMargin=0 leftMargin=0 topMargin=0 rightMargin=0> <BR style=OVERFLOW: hidden; LINE-HEIGHT: 3px> <table border=1 width=100% id=table1> <tr> <td> <% dim allid,ppp,id,totalnum sql=select * from table order by id DESC set rs=server.createobject(adodb.recordset) rs.open sql,conn,1,1 if not rs.eof then do while not rs.eof if allid= then allid= rs(id) else allid= allid & ; & rs(id) rs.movenext loop else If Rs.bof And Rs.EOF Then Response.Write 还没有找到任何文章! End if end if rs.close set rs=nothing allid=; allid ppp=split(allid,;) totalnum=ubound(ppp) for id=1 to totalnum Session(id)=Session(id) 1 creat(id) response.write 正在生成znwl_&id&.htm...<br> next %> </td> </tr> </table> </BODY> </HTML> <% Function creat(id) sql=SELECT * from table where id=&ID set rs=conn.execute(sql) dim name name=rs(name) conn.execute(sql) rs.close set rs=nothing dim fso dim znwl dim art dim fw set fso=createobject(scripting.filesystemobject) set znwl=fso.opentextfile(server.mappath(模板页)) art=znwl.readall znwl.close %> art=replace(art,{$name$},name) set fw=fso.createtextfile(server.mappath(生成页存放位置及页面名称),true) fw.writeline art fw.close set fso=nothing End Function |
这种方法快,但是你的空间要不受限制!--智能网络
上面的方法仅供参考,并不是本人修改的最后版本,但是绝对好用.
分享:ASP技巧实例:几行代码解决防止表单重复提交在很多情况下都需要防止相同的表单被多次提交,很多人的实现方法都比较复杂(代码数量超过几十行!!)下面提供一种只需使用几行代码的方法,轻松地实现了防止用户刷新多次提交表单和使用后退钮重