经典论坛's Archiver

曾经的我 发表于 2007-2-6 16:29

ASP开发HTML静态新闻信息系统[附教程和源码]

前 言:

  断断续续,从事网站制作已经有2年了,是蓝色陪我走过了这两年,我的成长离不开蓝色,这是肺腑之言,今天刚好客户要做前台是HTML静态的,但是还要进行后台管理的,于是就想到尝试一下做,由于出发点是给新手起个抛砖引玉的作用,或多或少能给你们一些借鉴,有任何好的意见和建议,欢迎大家指正!前提是运行环境支持FSO,否则无法使用此功能。
制作步骤:

 第一步:用ACCESS建立数据库,名称为HtmlNews,并建立如下的表:
[img]http://www.wypz.com/myself/images/wypz1.gif[/img]
新闻信息表
[img]http://www.wypz.com/myself/images/wypz2.gif[/img]
信息分类表 若要将信息分成二级三级,原理一样,讲述重点不在于此;  
[img]http://www.wypz.com/myself/images/wypz3.gif[/img]
模板信息表
[img]http://www.wypz.com/myself/images/wypz4.gif[/img]
管理员表 若管理员要分权限或分组可另增加字段

  数据库和表已经建立完成;数据库连接以及正常的操作数据库(读取,写入,更新,删除等在此就不多说,重点讲一下,

利用ASP生成静态页的原理和具体方法;所以在此其它的开发及制作过程(包括分类,模板,等的管理以及操作在此不讲述,

大家直接看源文件就可以了。[b][color=Red]大家注意一点:信息表与模板表的ID关联;生成静态页的时候,根据这个ID来读取模板文件;[/color][/b]

  第二步:建立添加信息页面:
[img]http://www.wypz.com/myself/images/wypz5.jpg[/img]
  用到了一个编辑器,是网上载的,大家有的一定也用过这个;
  第三步:写提交保存页,并生成HTML文件;代码如下,有详细说明;
[img]http://www.wypz.com/myself/images/wypz6.gif[/img]
[img]http://www.wypz.com/myself/images/wypz7.gif[/img]
[img]http://www.wypz.com/myself/images/wypz8.gif[/img]
[img]http://www.wypz.com/myself/images/wypz9.gif[/img]
  到此,添加新闻信息并生成HTML文件就成功了!修改新闻信息同理,只有生成HTML文件的代码稍有不同;
[img]http://www.wypz.com/myself/images/wypz10.gif[/img]
其中FilePath与FileName是从信息的数据库中读取的,这样就是相当于修改后覆盖了原来的HTML文件;
[url=http://www.wypz.com/HTML.rar][b][color=Red]整个文件打包下载(包括教程和说明)[/color][/b][/url]
  大家有什么问题,欢迎一起探讨,我也是第一次做这个,不敢说代码如何如何,目的只有一个,给新手起一个抛砖引玉的作用,同时向高手讨教!大家下载尽量不要开多线程哦,照顾一下我,文件不大,加编辑器在内一共才500多K,所以不用担心;

排版好累,直接复制过来不行,[b][color=Red][url=http://www.wypz.com/myself/wypz.html]点击这里教程查看页[/url][/color][/b]

chinazyr2005 发表于 2007-2-6 16:40

支持一下。可以互相加QQ610126418,有啥问题一起研究

pp1073 发表于 2007-2-6 22:35

支持一下

点到为止

konghu1020 发表于 2007-2-7 01:00

这样的文章比比皆是,布鲁斯狼的相对比较系统,对于很多方法函数,楼主的并不是原创,不过还是支持一下~

戒不了烟 发表于 2007-2-7 10:03

顶一下吧,正学习这方面的东西,希望楼主多发教程!

ahuinan 发表于 2007-2-7 10:57

楼主你那个下载不了,
发一份给我学习好吗?
ahuinan@21cn.com

曾经的我 发表于 2007-2-7 15:12

可以下载,服务器有防盗链的,点开,点击就可以下载的;

ahuinan 发表于 2007-2-7 16:10

你的防火墙也太猛了吧!用这边点了N次都不能下载,
望楼主发发慈悲,发到ahuinan@21cn.com

曾经的我 发表于 2007-2-8 09:48

[quote]原帖由 [i]konghu1020[/i] 于 2007-2-7 01:00 发表
这样的文章比比皆是,布鲁斯狼的相对比较系统,对于很多方法函数,楼主的并不是原创,不过还是支持一下~ [/quote]

发这个不是想和谁比一下我的好,你的心态就没有摆正,也不用这样说;至于很多方法函数的用户,程序本来就是相通的,难道说你写个程序里面有定义:a=b,其它人再定义就不是自己写的吗?再说,做事写程序也好,有时候已经有比较成熟,稳定的东西并且是可以利用的,为何还要花这个时间去研究这些东西呢?难道说你在使用WINDOWS系统的时候还要考虑他是不是原创,正版吗?考虑问题或是评论一件事,核心并不在这。

退一步说,就算比比皆是,为何还会有人问?你会并不代表所有人都会,同时你不需要这方面的帮助并不代表其它人不需要,我写下这个的初衷就是想和大写 起交流一下,是为了更好的解决问题,学习进步,并不是在此讨论这些没有用的话题。

曾经的我 发表于 2007-2-9 08:17

[quote]原帖由 [i]ahuinan[/i] 于 2007-2-7 16:10 发表
你的防火墙也太猛了吧!用这边点了N次都不能下载,
望楼主发发慈悲,发到ahuinan@21cn.com [/quote]

已经发送了;奇怪为何我可以下载,不过不要用快车什么的,直接点就可以的;

choulao 发表于 2007-2-9 09:01

下不了,用不着这样吧,直接点,谢谢楼主

togoog 发表于 2007-2-9 15:20

俺也想一份,谢谢楼主yj_oe@163.com

hadesmile 发表于 2007-2-9 20:22

有点问题

Provider 错误 '80004005'

未指定的错误

/3/HTML/HtmlManagers/pub_dbconn.asp,行 24

hadesmile 发表于 2007-2-9 20:55

哦没放在根目录刚才,所以出错了,谢谢楼主,这几天我正好要用到这个:)

wiciw 发表于 2007-2-10 11:13

生成的首页!新闻是倒的(新发表在后面)。怎么修改呢!

wzp504 发表于 2007-2-10 14:58

对我很有帮助, 谢谢楼主!

myflvv 发表于 2007-2-10 15:26

回复 #1 曾经的我 的帖子

楼主好人做到底,发给我一份吧...zdy_8485@163.com     
thanks

SOSOS 发表于 2007-2-11 21:27

当需要批量就不行了!

曾经的我 发表于 2007-2-12 09:22

回复 #22 wiciw 的帖子

你修改一下后台里面的生成页的排序就行了;news_makehtml.asp这个文件;

[code]

<%
set rs_2 = server.CreateObject ("adodb.recordset")
sql_2 = "select * from  class   order by id desc"
rs_2.Open sql_2,conn,1,1
do while not rs_2.Eof
n=1
set rs_1 = server.CreateObject ("adodb.recordset")
Set fso= Server.CreateObject("Scripting.FileSystemObject")
set fd=fso.createtextfile(server.MapPath("..\HtmlJavaScript\class"&rs_2("id")&".js"),true)
str="document.write('"
sql_1 = "select top 5 pname,title,FilePath,FileName,addtime,id from InfoMation where pname='"&rs_2("pname")&"' and (sfsets=2 or sfsets=3 ) order by id desc"
rs_1.Open sql_1,conn,1,1
if rs_1.eof then
str=str & "')"
response.write "<tr bgcolor=#eeeeee><td align=right width='30%' height='25'>"&rs_2("pname")&"</td><td><font color=red>暂时还没有文章!</font></td></tr>"
else
do while not rs_1.EOF
temptime =month(rs_1("addtime")) & "月" & day(rs_1("addtime")) & "日 "
call titlen(14)
str = str & ".<a  href="& rs_1("FilePath")& rs_1("FileName")& " target=_blank>"& tlen& "</a><font color=666666>("& temptime & ")</font><br><br>"
rs_1.movenext
n=n+1
loop
str=str & "')"
response.write "<tr bgcolor=#eeeeee><td align=right width='30%' height='25'>"&rs_2("pname")&"</td><td><font color=blue>完成更新</font></td></tr>"
end if
rs_1.close
set rs_1=nothing
fd.write str
fd.close
rs_2.MoveNext
Loop
rs_2.Close
set rs1=nothing
set rs2=nothing
%>
[/code]

修改这个;

曾经的我 发表于 2007-2-12 09:24

回复 #25 SOSOS 的帖子

你指的批量是指什么?

futballman 发表于 2007-2-12 21:42

如果有“上一篇”“下一篇”和内容自动分页就差不多

曾经的我 发表于 2007-3-1 22:21

楼上的也下载不了吗?昨天才回公司上班;

页: [1]



Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.