当前位置:编程学习 > asp >>

asp批量生成html文件问题。。。急帮。。

请高手改一下代码: 问题,第一张页面栏目是正确的,第二张页面开始栏目就加上了《栏目1+栏目2》《栏目1+栏目2+栏目3》《栏目1+栏目2+栏目3+栏目4》。。该怎么解决? 比如说: 第一张页面-国际新闻 | 首页 | 国际新闻 | 国内新闻 | 栏目1 | 栏目2 | 第二张页面- 国内新闻 | 首页 | 国际新闻 | 国内新闻 | 在这里加上了 国际新闻的 栏目1 | 栏目2 |+| 栏目1 | 栏目2 | 应该是 国内新闻的| 栏目1 | 栏目2 | 怎么解决? <%dim TempString1 TempString1="..\template\nav.tpl" Function ReadFromUTF1(TempString1,CharSet) Dim str1 Set stm1=server.CreateObject("adodb.stream") stm1.Type=2 stm1.Mode=3 stm1.Charset=CharSet stm1.Open stm1.loadfromfile Server.MapPath("..\template\nav.tpl") str1=stm1.readtext stm1.Close Set stm1=Nothing ReadFromUTF1=str1 End Function dim nav_name,nav_mian,navv Set rs=Server.CreateObject("adodb.recordset") sql="select * from nav where nav_b=true" rs.open sql,conn,1,1 do while not rs.eof dim id id=rs("nav_id") '问题在这里,第一个栏目是正确的,第二栏目开始就加上了《栏目1+栏目2》《栏目1+栏目2+栏目3》《栏目1+栏目2+栏目3+栏目4》。。该怎么解决? set rstr = server.createobject("adodb.recordset") sqltr="select * from nav where nav_b="&false&" and x_y="&true&" and nav_b_id="&id rstr.open sqltr,conn,1,1 if rstr.recordcount=0 then navv="" else do while not rstr.eof navv = navv &"<a href='"&rstr("nav_url")&"' target='"&rstr("target")&"'>"&rstr("nav_name")&"</a>" rstr.movenext loop end if dim path path=rs("nav_url") Dim Fso:Set Fso=CreateObject("Scripting.FileSystemObject") Dim TemplateFile,TemplateContent Set TemplateFile=Fso.OpenTextFile(Server.MapPath("..\template\nav.tpl")) TemplateContent=TemplateFile.ReadAll TemplateFile.Close Set TemplateFile=Nothing TemplateContent=ReadFromUTF1(TemplateContent,"utf-8") TemplateContent=Replace(TemplateContent,"{navn}",navn) TemplateContent=Replace(TemplateContent,"{navv}",navv) Dim CreateHtmlFile Set CreateHtmlFile=Fso.CreateTextFile(Server.MapPath("../"&path),2,True) CreateHtmlFile.WriteLine TemplateContent CreateHtmlFile.Close Set CreateHtmlFile=Nothing Set Fso=Nothing rs.movenext loop rs.close set rs=nothing if err then Response.Write"<script>alert('批量生成html文件失败!');window.location.href='admin_html.asp'</script>" else Response.Write"<script>alert('批量生成html文件成功!');window.location.href='admin_html.asp'</script>" end if %>
答案:把该行:if rstr.recordcount=0 then
navv=""
else
do while not rstr.eof 
navv = navv &"<a href='"&rstr("nav_url")&"' target='"&rstr("target")&"'>"&rstr("nav_name")&"</a>"
 rstr.movenext 
loop
 end if 

改为:do while not rstr.eof 
navv = navv &"<a href='"&rstr("nav_url")&"' target='"&rstr("target")&"'>"&rstr("nav_name")&"</a>"
 rstr.movenext 
loop
去掉:if rstr.recordcount=0 then
试试看

上一个:<html> function pushbutton(){ window.alert("信息内容!"); } </html>
下一个:apache url rewrite用正则怎么把detail.php?software_id=24换成detail-software_id-24.html

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,