标题:再次求助:ASP生成静态网站网页的路径问题
只看楼主
jobds
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2009-10-11
结帖率:80%
已结贴  问题点数:20 回复次数:13 
再次求助:ASP生成静态网站网页的路径问题
上次在ASPIC高手的帮助下,解决了一个程序生成网页的路径问题,这次发现另一个程序也存在这样的问题,按照上次的方法却不能够解决,程序如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="co.asp"-->
<%
yusername=Request.Cookies("adminname888")
'response.Write yname
'response.end()
if yusername="" then
response.redirect("index.asp")
end if
%>
<%'容错处理
On Error Resume Next
%>
<%
a=request.QueryString("id")
set rs=server.CreateObject("ADODB.recordset")
sql="SELECT *  FROM xw where id="&a&" Order by uid desc "(红1)
.open sql,connstr,3,3
cc=rs.recordcount

%>

<%
aa3=rs("bt")
aa4=rs("txt")
aa5=rs("data")
wjm=rs("url")(红2)
>
<%
set rsxw=server.CreateObject("ADODB.recordset")
sqlxw="SELECT *  FROM xw  Order by dj desc"
rsxw.open sqlxw,connstr,3,3

xwhot=""
xwhot=xwhot&"<table width=210 border=0 cellspacing=0 cellpadding=0>"
dim n
n=1
do while not rsxw.eof and n<=12
xwhot=xwhot&"<tr valign=top>"
xwhot=xwhot&"<td width=210 height=28> ·<a href="&rsxw("id")&".html class=style3>"&left(rsxw("bt"),14)&"</a></td>"(红3
whot=xwhot&"</tr>"
rsxw.movenext
n=n+1
loop
xwhot=xwhot&"</table>"

%>


<%
set rsxw1=server.CreateObject("ADODB.recordset")
sqlxw1="SELECT *  FROM xw Order by id desc"
rsxw1.open sqlxw1,connstr,3,3

xwhot1=""
xwhot1=xwhot1&"<table width=210 border=0 cellspacing=0 cellpadding=0>"
dim n1
n1=1
do while not rsxw1.eof and n1<=12
xwhot1=xwhot1&"<tr valign=top>"
xwhot1=xwhot1&"<td width=210 height=28> ·<a href="&rsxw1("id")&".html class=style3>"&left(rsxw1("bt"),14)&"</a></td>"(红4
whot1=xwhot1&"</tr>"
rsxw1.movenext
n1=n1+1
loop
xwhot1=xwhot1&"</table>"

%>
<%

'打开模板代码,并将其中特殊代码转变为接受值


set rs1=server.CreateObject("ADODB.recordset")
sql1="SELECT *  FROM mb where id=1"
rs1.open sql1,connstr,1,1


'sql1="select m_id,m_html from c_moban where m_id=2"
'set rs1=Server.CreateObject("adodb.recordset")
'rs1.open sql1,conn,1,1
mb_code=rs1("mb")

mb_code=replace(mb_code,"$$bt$$",aa3)
mb_code=replace(mb_code,"$$txt$$",aa4)
mb_code=replace(mb_code,"$$data$$",aa5)
mb_code=replace(mb_code,"$$id$$",a)
mb_code=replace(mb_code,"$$xwhot$$",xwhot)
mb_code=replace(mb_code,"$$xwhot1$$",xwhot1)

'生成HTML页面
Dim fso,f
Dim strTitle,strContent,strOut
'创建文件系统对象
Set fso=Server.CreateObject("Scripting.FileSystemObject")
Set f=fso.CreateTextFile(Server.MapPath("../"&wjm),true)(红5)

入网页内容
f.WriteLine mb_code
f.close
aa="正在生成第"&n&"个文件——"&rs("id")&"—"&rs("url")&"<br>"
response.Write aa
'response.end()
%>

<html>
<head>
<title>k</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="../style/basic.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
body,td,th {
    font-size: 12px;
}
.style2 {color: #000000}
.style3 {
    font-size: 18px;
    font-weight: bold;
}
.style4 {
    color: #FFFFFF;
    font-weight: bold;
}
-->
</style></head>
<body>
<div align="center">
  <br>
  <br>
  <br>
  <br>
  </div>
</body>
</html>
介绍一下程序的大致情况,这个程序是生成一个静态新闻页,左侧是点击排行和最近更新,右侧是新闻内容.数据库中的URL是网页的准确地址,格式如下newsfile/2009-10-11/48.html,日期是网页生成的时间,现在的问题是网页自身生成的路径对,但左侧排行和最近更新部分的网页路径错误,路径和这个网页的路径是一样的,本人尝试了几次修改.
把红3和红4的<a href="&rsxw1("id")&".html class=style3>"&left(rsxw1("bt"),14)&"</a></td>"改成·<a href="&rsxw1("url")&" class=style3>"&left(rsxw1("bt"),14)&"</a></td>"
这时候,网页生成的路径对,但左侧的链接路径变为newsfile/2009-10-11/newsfile/2009-10-10(注:链接网页的准确路径)/48.html
如果把红1删掉,左侧链接网页的路径是正确的,但生成网页则在根目录下
另外红2和红5对路径也有可能有影响
期待高人解惑.

[ 本帖最后由 jobds 于 2009-10-23 09:10 编辑 ]
搜索更多相关主题的帖子: ASP 路径 静态 网页 
2009-10-23 09:08
aspic
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:51
帖 子:2258
专家分:8050
注 册:2008-2-18
得分:20 
5是受1、2影响的
把红3和红4的
<a href="&rsxw1("id")&".html class=style3>"&left(rsxw1("bt"),14)&"</a></td>"
改成
·<a href="&rsxw1("url")&rsxw1("id")&" class=style3>"&left(rsxw1("bt"),14)&"</a></td>"
这样试试 你的解释有点把人搞糊涂~ 早上有点头晕
2009-10-23 09:53
jobds
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2009-10-11
得分:0 
ASPiC高人来了哈,熬夜了吧?

改了一下,生成的网页路径对
但左侧排行和更新生成的路径是newsfile/2009-10-11/newsfile/2009-10-11/48.html
多了newsfile/2009-10-11二级目录
俺感觉红1这句特别厉害,只要他存在,生成的路径就会多出来这二级
能否把红1变一下位置,让他只对红5起作用,而对红3,红4不生效呢?
2009-10-23 10:09
jobds
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2009-10-11
得分:0 
顶起来,请高手指点哈
2009-10-24 11:40
jobds
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2009-10-11
得分:0 
如ASPIC高手判断,问题出在这句
a href="&rsxw1("id")&".html class=style3>"&left(rsxw1("bt"),14)&"</a></td>"
生成的路径是:newsfile/2009-10-11/X.HTML(其中时期部分是当前的时间,是错误的路径)
数据表中有一项URL,是准确的路径,格式为newsfile/2009-10-09/X.HTML(其中时期部分是链接网页生成时的时间,是正确的)
把这句改为
a href="&rsxw1("URL")&" class=style3>"&left(rsxw1("bt"),14)&"</a></td>"
新问题出现,生成的路径是:
newsfile/2009-10-11/newsfile/2009-10-09/X.html
多出了newsfile/2009-10-11/这二级目录,俺尝试着把根目录写进这个语句,由于俺不会写ASP程序,试了几次都没有成功,经过不能够生成链接,请教高手,这一句该如何改?不胜感激.
2009-10-26 21:58
aspic
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:51
帖 子:2258
专家分:8050
注 册:2008-2-18
得分:0 
打包过来
2009-10-27 08:55
jobds
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2009-10-11
得分:0 
ASPIC高手又出现了哈,是把程序全打包吗?打完包发到哪?
程序的页面见http://
左侧热门文章和最近更新的超链接都是错误的,和网页生成的时间是一样的
刚刚怀疑这个语句中是否对全局的路径有了定义?
<%
a=request.QueryString("id")
set rs=server.CreateObject("ADODB.recordset")
sql="SELECT *  FROM xw where id="&a&" Order by uid desc "(红1)
.open sql,connstr,3,3
cc=rs.recordcount
 
%>
2009-10-27 09:54
aspic
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:51
帖 子:2258
专家分:8050
注 册:2008-2-18
得分:0 
你随便传到哪去 然后发地址出来
2009-10-27 10:15
jobds
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2009-10-11
得分:0 
地址:http://www.
用户名和密码都是ADMIN
路径是/admin/index.asp
有问题的程序是html_game1.asp
与后台对应的是新闻管理-生成网页
2009-10-27 11:33
aspic
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:51
帖 子:2258
专家分:8050
注 册:2008-2-18
得分:0 
Set f=fso.CreateTextFile(Server.MapPath("/"&wjm),true) '生成到根目录下面的wjm
2009-10-27 12:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-289569-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.188349 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved