新闻发布系统,顾名思义就是后台发布新闻内容,前台读取新闻信息。为了让初学者更清楚的了解整个过程,这里把所有操作过程的文件分开来,分为以下几个页面:提交新闻表单页、保存新闻数据、读取数据、编辑数据、删除数据操作,数据库连接文件一共五个页面。结合前面讲过的:ASP如何进行数据库写入操作,ASP如何对数据库编辑与删除操作 等。
1、 添加数据页 add.htm
这里制作一个简单的提交数据表单页,分别为:新闻标题、新闻内容、发布人三个表单。在form的action里保存到savedata.asp文件里。
2、 保存数据页 savedata.asp
使用以前讲过的request.form属性来获取值,写入数据库。
整页代码如下:
<%
'取得表单数据
title=request.form("title")
content=request.form("content")
content=replace(replace(content,chr(13),"<br>"),chr(32)," ") '把输入框中的回车换成html代码的回车<br>,把空格换成
editor=request.form("editor")
set rs=server.CreateObject("adodb.recordset") '创建rs记录集
sql="select * from [news]" '读取数据库的SQL语句串
rs.open sql,conn,3,3 '打开记录集,当需要对数据库进行更新操作时,用3,3,如果只需要读取数据库,用1,1 这个以后会解释。
rs.addnew '添加新记录
rs("title")=title
rs("content")=content
rs("editor")=editor
rs.update '更新数据库
rs.close '关闭记录集
set rs=nothing '清空记录集
response.redirect("index.asp") '提交成功后,转向到index.asp文件,读取数据库内容
%>
3、 读取数据页面 index.asp
建立记录集,循环读取数据库表里的内容,部分代码如下:
<%
set rs=server.CreateObject("adodb.recordset") '创建rs记录集
sql="select * from [news]" '读取数据库的SQL语句串
rs.open sql,conn,1,1 '打开记录集
%>
<%do while not rs.eof
'rs.eof意思是最后一条记录,rs.bof的意思是第一条记录,所以这句话的意思是:当不是最后一条记录时,输出下面的代码%>
<tr bgcolor="#FFFFFF">
<td height="24"><%=rs("title")%></td>
<td><%=rs("content")%></td>
<td><%=rs("editor")%></td>
<td><%=rs("addtime")%></td>
<td><a href="delete.asp?id=<%=rs("id")%>">删除</a></td>
<td><a href="edit.asp?id=<%=rs("id")%>">编辑</a></td>
</tr>
<%rs.movenext '移到下一条记录
loop%>
这里有个“编辑”与“删除”链接,都必须跟一个id唯一标识过去,这样才知道你需要编辑或删除的新闻是哪一条。
4、 编辑新闻页面 edit.asp
根据提交过来的id值得知需要编辑的新闻,先把该新闻数据读取出来,
<%
id=request.querystring("id")
set rs=server.CreateObject("adodb.recordset") '创建rs记录集
sql="select * from [news] where id="&id&"" '读取数据库的SQL语句串
rs.open sql,conn,1,1 '打开记录集
%>
更改内容后,提交到保存数据页面editsave.asp
5、 保存编辑新闻页面
<%
'取得表单数据
id=request.querystring("id")
title=request.form("title")
content=request.form("content")
content=replace(replace(content,chr(13),"<br>"),chr(32)," ") '把输入框中的回车换成html代码的回车<br>,把空格换成
editor=request.form("editor")
set rs=server.CreateObject("adodb.recordset") '创建rs记录集
sql="select * from [news] where id="&id&"" '读取数据库的SQL语句串
rs.open sql,conn,3,3 '打开记录集,当需要对数据库进行更新操作时,用3,3,如果只需要读取数据库,用1,1 这个以后会解释。
rs("title")=title
rs("content")=content
rs("editor")=editor
rs("addtime")=now() '新闻发布时间更改为当前服务器时间
rs.update '更新数据库
rs.close '关闭记录集
set rs=nothing '清空记录集
response.redirect("index.asp") '提交成功后,转向到index.asp文件,读取数据库内容
%>
6、 删除新闻页面 delete.asp
根据提交过来的id知道需要删除的新闻,执行删除操作:
<%
'取得表单数据
id=request.querystring("id")
conn.execute("delete from [news] where id="&id&"")
response.redirect("index.asp") '提交成功后,转向到index.asp文件,读取数据库内容
%>
这样整个新闻发布系统就算完成了,所有代码可以查看压缩包,里面包含了数据库。
本文原创:义乌网站建设 http://www.15ask.com 写于2012-04-07
- 评论:(0)
发表评论 点击这里获取该日志的TrackBack引用地址