当点击按钮时,生成一个以该条新闻ID为文件名的静态html页面
当点击按钮时,生成一个以该条信息的ID为文件名的静态HTML页面,我用的数据库为SQL,数据库有三个字段,ID,标题,内容,我点击添加按钮后,ID是自动增加的,生成一个根...
当点击按钮时,生成一个以该条信息的ID为文件名的静态HTML页面,我用的数据库为SQL,数据库有三个字段,ID,标题,内容,我点击添加按钮后,ID是自动增加的,生成一个根据此次增加的ID的文件名。请帮助解决一下,给你示例说明一下,谢谢
展开
5个回答
2013-08-19
展开全部
你需要一个已经编辑好的html文件模板,新闻标题那个地方定一个特殊的字符串,新闻内容那里定义一个特殊的字符串,然后你需要做的就是在后台生成的时候,读入这个html文件的源代码,把你新闻标题从数据库中读出来并替换html源文件中新闻标题的那个特殊字符串,同理替换新闻内容的那个字符串,然后把你更改后的html源文件按照你的新闻ID另存为html文件即可。这就是网上一般动态生成静态页面的思路。
2013-08-19
展开全部
<%
'=========================================
'周相鹏提示:定义变量
Dim rocid,roctitle,roccont'用于文件内容
'首先你的按钮发个ID过来
rocid=request("id")
'根据ID取文件标题内容
sql="select id,标题,内容 from 表名 where id="&rocid
Set rs= Server.CreateObject("ADODB.Recordset")
rs.open sql,conn,1,1
if not rs.eof then
roctitle=rs("标题")
roccont=rs("内容")
rs.close
set rs=nothing
else
response.write "ID出错"
response.end
end if
'=========================================
'文件对象
Set ROCFSO=Server.CreateObject("Scripting.FileSystemObject")
'=========================================
'文件生成路径
urlto="ROC/test1.html"
'文件是否存在
If ROCFSO.FileExists(server.MapPath(urlto)) Then
ROCFSO.DeleteFile Server.Mappath(urlto),true '存在就删除
End ifrocFileCont="测试一下吧" '文件内容我在下面详细介绍一下怎么弄Set rocFileSave = ROCFSO.CreateTextFile(Server.Mappath(urlto),true)'建立文件
rocFileSave.Write rocFileCont '写内容
rocFileSave.Closeset ROCFSO=nothing'=========================================
'rocFileCont文件内容,一般来讲生成静态有三种来源方式
'1、用response.write 写,这种方式太麻烦修改调试不方便,所以小网站用用
'2、用一个静态文件做为模板,里面用特殊标记来代表标题呀,内容呀,用的时候读出来替换
'3、将模板内容存到数据库,(此方法与2相同)
'下面我们来分别做个测试吧
'把这一段替换成以下内容就可以了
'rocFileCont="测试一下吧" '文件内容我在下面详细介绍一下怎么弄
'=========================================
'1、用response.write 写
rocFileCont=rocFileCont& "<HTML><head><meta http-equiv='Content-Type' content='text/html; charset=gb2312'>"
rocFileCont=rocFileCont& "<title>"&rocTitle&"</title></HEAD>"
rocFileCont=rocFileCont& "<body>"
rocFileCont=rocFileCont& "<table><tr><td>"&rocTitle&"</td></tr><tr><td>"&rocCont&"</td></tr></table>"
rocFileCont=rocFileCont& "</body></html>"
'=========================================
'2、用一个静态文件做为模板,里面用特殊标记来代表标题呀,内容呀,用的时候读出来替换
'如我们用#title#表示标题 #Cont#表示内容
dim temCont'模板内容
temFile=server.mappath("roc/template.html")'模板原文件
Set temFileObject = ROCFSO.OpenTextFile(temFile,1)'打开文件对象
temCont = temFileObject.ReadAll '读取内容出来
temCont = Server.HTMLEnco(temCont)
rocFileCont=replace(temCont,"#title#",rocTitle)'用模板的内容替换成你的表内容
rocFileCont=replace(rocFileCont,"#Cont#",rocCont)
temFileObject.Close
'3、将模板内容存到数据库,(此方法与2相同)
'如我们用#title#表示标题 #Cont#表示内容
'选取出模板内容
dim temCont'模板内容
sqlTemp="select 模板内容字段 from 模板表名 where id=xxx"&
Set rsTemp= Server.CreateObject("ADODB.Recordset")
rsTemp.open sqlTemp,conn,1,1
if not rsTemp.eof then
temCont=rsTemp("模板内容字段")
rsTemp.close
set rsTemp=nothing
else
response.write "模板不存在"
response.end
end if
'其它的与2相同
temCont = Server.HTMLEnco(temCont)
rocFileCont=replace(temCont,"#title#",rocTitle)'用模板的内容替换成你的表内容
rocFileCont=replace(rocFileCont,"#Cont#",rocCont)%>
'=========================================
'周相鹏提示:定义变量
Dim rocid,roctitle,roccont'用于文件内容
'首先你的按钮发个ID过来
rocid=request("id")
'根据ID取文件标题内容
sql="select id,标题,内容 from 表名 where id="&rocid
Set rs= Server.CreateObject("ADODB.Recordset")
rs.open sql,conn,1,1
if not rs.eof then
roctitle=rs("标题")
roccont=rs("内容")
rs.close
set rs=nothing
else
response.write "ID出错"
response.end
end if
'=========================================
'文件对象
Set ROCFSO=Server.CreateObject("Scripting.FileSystemObject")
'=========================================
'文件生成路径
urlto="ROC/test1.html"
'文件是否存在
If ROCFSO.FileExists(server.MapPath(urlto)) Then
ROCFSO.DeleteFile Server.Mappath(urlto),true '存在就删除
End ifrocFileCont="测试一下吧" '文件内容我在下面详细介绍一下怎么弄Set rocFileSave = ROCFSO.CreateTextFile(Server.Mappath(urlto),true)'建立文件
rocFileSave.Write rocFileCont '写内容
rocFileSave.Closeset ROCFSO=nothing'=========================================
'rocFileCont文件内容,一般来讲生成静态有三种来源方式
'1、用response.write 写,这种方式太麻烦修改调试不方便,所以小网站用用
'2、用一个静态文件做为模板,里面用特殊标记来代表标题呀,内容呀,用的时候读出来替换
'3、将模板内容存到数据库,(此方法与2相同)
'下面我们来分别做个测试吧
'把这一段替换成以下内容就可以了
'rocFileCont="测试一下吧" '文件内容我在下面详细介绍一下怎么弄
'=========================================
'1、用response.write 写
rocFileCont=rocFileCont& "<HTML><head><meta http-equiv='Content-Type' content='text/html; charset=gb2312'>"
rocFileCont=rocFileCont& "<title>"&rocTitle&"</title></HEAD>"
rocFileCont=rocFileCont& "<body>"
rocFileCont=rocFileCont& "<table><tr><td>"&rocTitle&"</td></tr><tr><td>"&rocCont&"</td></tr></table>"
rocFileCont=rocFileCont& "</body></html>"
'=========================================
'2、用一个静态文件做为模板,里面用特殊标记来代表标题呀,内容呀,用的时候读出来替换
'如我们用#title#表示标题 #Cont#表示内容
dim temCont'模板内容
temFile=server.mappath("roc/template.html")'模板原文件
Set temFileObject = ROCFSO.OpenTextFile(temFile,1)'打开文件对象
temCont = temFileObject.ReadAll '读取内容出来
temCont = Server.HTMLEnco(temCont)
rocFileCont=replace(temCont,"#title#",rocTitle)'用模板的内容替换成你的表内容
rocFileCont=replace(rocFileCont,"#Cont#",rocCont)
temFileObject.Close
'3、将模板内容存到数据库,(此方法与2相同)
'如我们用#title#表示标题 #Cont#表示内容
'选取出模板内容
dim temCont'模板内容
sqlTemp="select 模板内容字段 from 模板表名 where id=xxx"&
Set rsTemp= Server.CreateObject("ADODB.Recordset")
rsTemp.open sqlTemp,conn,1,1
if not rsTemp.eof then
temCont=rsTemp("模板内容字段")
rsTemp.close
set rsTemp=nothing
else
response.write "模板不存在"
response.end
end if
'其它的与2相同
temCont = Server.HTMLEnco(temCont)
rocFileCont=replace(temCont,"#title#",rocTitle)'用模板的内容替换成你的表内容
rocFileCont=replace(rocFileCont,"#Cont#",rocCont)%>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-19
展开全部
你是想实现查看某条新闻或者某篇文章那种效果,是不是啊?这没必要生成静态页面啊,你可以用如下这种方法:1.新建一个用于查看新闻或者文章的页面,例如shownews.aspx2.对于所有文章的链接都是shownews.aspx?id=XXXXX,后面的XXXX是该文章的ID3.在shownews.aspx的页面加载事件里,用Request对象获取这个ID,然后通过这个ID把该文章的详细信息显示到该页中的相应位置就行了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-19
展开全部
insert into ......;select @@identity from table就可以获取最后一次插入的ID
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-19
展开全部
加我214485112,我发两个CS文件给你参考.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询