010基于ASP的青年论坛
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
青年论坛设计
摘 要: 使用ASP语言和数据库技术设计的一个青年论坛软件。使用ASP内置的SELECT、 INSERT INTO、UPDATE 、DELETE、EXECUTE等指令和微软Access数据库软件技术实现论坛的各种功能。Asp的优点有安全性与减轻客户端浏览器的负担,提高交互速度,Access 的优点在于与其他网络用户共享数据库。 [资料来源:THINK58.com]
[来源:http://think58.com]
[资料来源:http://THINK58.com]
[资料来源:http://www.THINK58.com]
关键词:ASP 动态服务器页面 HTML超文本标记语言 VBScript: VB脚本语言 JAVAScript: JAVA脚本语言 [资料来源:http://www.THINK58.com]
目 录
引言……………………………………………………………………3
第一章 概述
1.1开发背景………………………………………………………3
1.2系统说明………………………………………………………4
第二章 主要技术和分析
2.1引言……………………………………………………………5
2.2ASP技术综述…………………………………………………5 [资料来源:http://THINK58.com]
2.3Dreamweaver MX2004应用……………………………………7
第三章 系统需求分析
3.1系统运行环境…………………………………………………8
3.2系统功能需求…………………………………………………8
第四章 系统概要设计
4.1模块划分及各模块功能介绍…………………………………9
4.2系统数据库设计………………………………………………9
第五章 详细设计与实现……………………………………………11
[版权所有:http://think58.com]
结纶……………………………………………………………………20
参考文献…………………………………………………………………………20 [版权所有:http://think58.com]
[资料来源:www.THINK58.com]
[资料来源:http://www.THINK58.com]
引 言
随着Internet的飞速发展,机关、学校、公司、企业都已经或正在建立自己的网站和论坛,而一个真正的、完善的论坛离不开Web数据库技术,Web数据库技术可以实现浏览器与数据库的双向交互。Web技术和数据库相互融合领域的研究已成为热点方向之一,Web数据库技术使Web技术和数据库技术都发生了质的变化:Web网页由静态网页发展成了动态网页,数据库实现了开发环境和应用环境的分离,用户端可以用相对统一的浏览器实现跨平台和多媒体服务。
第一章 概 述
1.1开发背景
为了提高自己对计算机专业知识的运用水平,并对三年来自己所学的计算机知识进行好好的回顾和实践运用,同时利用开展毕业的实习和开展毕业设计,检验自己学习中存在的不足,达到加强对网络和数据库等的学习。本论坛的个设计是结合现在流行的各种网上技术和论坛的普及,也是为适应企业的信息化管理基于ASP技术而设计的论坛。本论坛是为了方便台电团委与团员青年进行网上交流和开展网上对话,也有利于团员青年之间利用互联技术,开展学习、交流、网上交友等活动。本论坛的建立将发挥桥梁与扭带的作用大大的方便团委与广大青年团员之间沟通。
论坛是一个通过国际互联信息网络进行发布信息和实现多人通讯的一个系统。在这个信息极其发达的时代,我们目前可以用来发布信息和进行相互交流的方法也有非常多,比如文件、通知、电报、电话、电子邮件、OICQ等等通讯手段,但是这些或者不方便或者有局限性或者有费用的问题,比如一个红头文件从下发到被人阅览这期间要通过好多手续和时间,那么一个需要几个人一起讨论的会议就非的有一定的时间,和一定的地点,聚集在一起才能举行,一般情况下都需要花费大量的人力物力。非但费时费力费钱而且效果也不一定很好。电子邮件则不是一种及时联系的手段,需要一定时间才能到达,只能作为一种辅助交流的手段。而论坛就能很好的解决这个问题,厂团委发一个通知或文件不需要专人送的各个岗位和车间,我们也不需要聚集在同一地点,各自在不同的地点就可以在论坛中发言,大家互相讨论。而且好的论坛在讨论时还有各种表情符号等可以加强我们的表达。另外还有费用低廉,信息交流速度快等优点,青年论坛的建立将会为台电成为国际一流火力发电厂作出自己的贡献。
[来源:http://think58.com]
1.2系统说明
本论坛设计方案主要是利用局域网原理,在企业网络服务器上搭建一个网站,建立网页论坛平台,浏览者可通过网络,在自己的终端上利用IE浏览器访问该网站,浏览相关信息,并可以注册、注销个人信息,发表、编辑、修改、删除个人观点。
论坛以联系青年、服务青年、凝聚青年、引导青年为宗旨,以基层组织创新为目标,着力构建服务功能强大、信息交流便捷、管理模式科学的青年活动、交流的新型平台。成为广大青年思想交流的家园,文化活动的基地,娱乐联欢的场所,努力为广大青年服务。
第二章 主要技术和分析
2.1引言
实现动态网页的手段很多,像传统的CGI程序存在执行效率低、移植性较差及开发效率低的缺点。而目前十分流行的访问网站数据库是用ASP方式,同以往的Web开发工具相比具有灵活易用、强大的可扩充性、无需编译及独立于浏览器等优点,而且有效地结合了HTML语言、脚本语言,并可以通过Active服务器组件来扩充服务器功能
2.2ASP技术综述
2.2.1ASP技术简介
Microsoft Active Server Pages 即我们所称的 ASP ,其实是一套微软开发的服务器端脚本环境, ASP 内含于 IIS 3.0 和 4.0 之中 , 通过 ASP 我们可以结合 HTML 网页、 ASP 指令和 ActiveX 元件建立动态、交互且高效的 WEB 服务器应用程序。有了 ASP你就不必担心客户的浏览器是否能运行你所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通 HTML 中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。
[来源:http://think58.com]
2.2.2ASP技术特点
(1) 完全与HTML文件融合在一起;
(2) 容易创建,不需要其它编译、链接程序;
(3) 面向对象的并通过ActiveX Server对象可扩展。
2.2.3ASP与数据库
在实际应用中(如论坛发贴、删贴……),需要保存、删除、修改的数据很多,利用数据库来管理这些数据,可以很方便的查询和更新。数据库有很多种,如:Fox 数据库(.dbf)、Access 数据库(.mdb)、Informix、Oracle 和 SQL Server 等等,在这里,我采用 Microsoft Access 作为后台数据库。
2.3Dreamweaver MX2004应用
Macromedia Dreamweaver MX 2004 是一款专业的HTML 编辑器,用于对Web 站点、Web 页和Web 应用程序进行设计、编码和开发。无论您愿意享受手工编写HTML 代码时的驾驭感还是偏爱在可视化编辑环境中工作,Dreamweaver 都会为您提供有用的工具,使您拥有更加完美的Web 创作体验。利用Dreamweaver 中的可视化编辑功能,您可以快速地创建页面而无需编写任何代码。您可以查看所有站点元素或资源并将它们从易于使用的面板直接拖到文档中。您可以在MacromediaFireworks 或其他图形应用程序中创建和编辑图像,然后将它们直接导入Dreamweaver,或者添加Macromedia Flash 对象,从而优化您的开发工作流程。Dreamweaver 还提供了功能全面的编码环境,其中包括代码编辑工具(例如代码颜色和标签完成);有关HTML、层叠样式表(CSS)、JavaScript、ColdFusion 标记语言(CFML)、Microsoft Active Server Pages (ASP) 和JavaServer Pages (JSP) 的参考资料。Macromedia 的可自由导入导出HTML 技术可导入您手工编码的HTML 文档而不会重新设置代码的格式,您可以随后用您首选的格式设置样式来重新设置代码的格式。Dreamweaver 还使您可以使用服务器技术(例如CFML、ASP.NET、ASP、JSP 和PHP)生成由动态数据库支持的Web 应用程序。Dreamweaver 可以完全自定义。您可以创建您自己的对象和命令,修改快捷键,甚至编写JavaScript 代码,用新的行为、属性检查器和站点报告来扩展Dreamweaver 的功能。
[资料来源:http://www.THINK58.com]
第三章 系统需求分析
3.1系统运行环境:
服务器端:
1、WINDWOS2000 SERVER
2、IIS5.0
客户端:
1、WINDOWS98及以上版本
2、IE5.0及以上版本
3.2系统功能需求:
管理端:对版块,栏目,贴子,会员信息等进行管理。
客户端:注册,查询,发表回复贴子。
第四章 系统概要设计
4.1模块划分及各模块功能介绍:
[资料来源:http://THINK58.com]
[资料来源:THINK58.com]
[版权所有:http://think58.com]
[资料来源:http://THINK58.com]
[来源:http://www.think58.com]
[资料来源:http://think58.com]
[资料来源:http://think58.com]
4.2系统数据库设计:
本论坛采用ACCESS作为后台数据系统。数据库BOARD下面其有4个表。分别为:USER、BOARD、ADMIN、BBS1
字段名 字段类型 字段说明
USER表,里面记录注册用户的一些信息。
userID 自动编号 用户号
username 文本 用户名
userEmail 文本 EMAIL地址
artide 数字 积分
userpassword 文本 密码
sex 文本 性别
homefrom 文本 来自
homepage 文本 个人主页
BOARD表,里面记录版面信息。
BoardID 自动编号 版面序号
BoardType 文本 版面名称 [来源:http://www.think58.com]
BoardName 文本 斑竹用户名
MastarPwd 文本 密码
MastarEmail 文本 EMAIL
ADMIM表,里面记录论坛管理员信息。
ID 自动编号 编号
Adminame 文本 管理员用户名
Adminpwd 文本 密码
BBS1表,里面记录贴子信息。
AnnounceID 自动编号
ParentId 数字
Child 数字
Username 文本 发贴人
Boardid 数字
Useremail 文本
Topic 文本 贴子主题
Body 备注 贴子内容 [资料来源:http://think58.com]
Dateandtime 文本 发贴时间
Hits 数字
Length 数字
Rootid 数字
Layer 数字
Orders 数字
Ip 文本
Expression 文本
第五章 详细设计与实现
主页面DEFAULT.ASP
链接页面LEFT.ASP
[来源:http://think58.com]
[资料来源:http://www.THINK58.com]
[版权所有:http://think58.com]
[资料来源:http://think58.com]
[来源:http://think58.com]
[来源:http://think58.com]
[资料来源:www.THINK58.com]
[来源:http://www.think58.com]
[来源:http://think58.com]
论坛积分排行榜 POINT.ASP
论坛简介 ABOUT.ASP
[资料来源:www.THINK58.com]
[来源:http://www.think58.com]
[资料来源:http://THINK58.com]
[资料来源:http://think58.com]
[来源:http://www.think58.com]
[资料来源:http://THINK58.com]
论坛管理——管理员登录页面 LOGIN.ASP
论坛管理——管理功能页面 BOARDMANAGER.ASP
[资料来源:http://think58.com]
[资料来源:THINK58.com]
[来源:http://www.think58.com]
版面管理—斑竹登录页面 ELOGIN.ASP
版面管理——管理功能页面EMANAGE.ASP [来源:http://www.think58.com]
[资料来源:http://think58.com]
[资料来源:http://www.THINK58.com]
[来源:http://www.think58.com]
[版权所有:http://think58.com]
[版权所有:http://think58.com]
贴子主题浏览页面 LIST.ASP
发表回复页面 SHOWANNUNCE.ASP [资料来源:www.THINK58.com]
[资料来源:http://think58.com]
发表新话题页面 ANNOUNCE.ASP
贴子查询页面 QUERY.ASP QUERYRESULT.ASP
论坛用户个人资料(包括密码、信息)修改页面 MYINFO.ASP
常用数据库语句
1.SELECT 语句:命令数据库引擎从数据库里返回信息,作为一组记录。
2.INSERT INTO 语句:添加一个或多个记录至一个表。
3.UPDATE 语句:创建更新查询来改变基于特定准则的指定表中的字段值。
4.DELETE 语句:创建一个删除查询把记录从 FROM 子句列出并符合 WHERE 子句的一个或更多的表中清除。
5.EXECUTE 语句:用于激活 PROCEDURE(过程)
(一)连接数据库
方法1:
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")
方法2:
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("data.mdb")
注意:一个页面中,只要连接一次就可以了,数据库使用完后要及时关闭连接。
[资料来源:THINK58.com]
conn.Close
Set conn = Nothing
(二)、添加新记录到数据库
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")
username = "风云突变"
usermail = "fytb@163.com"
indate = Now()
sql = "insert into data (username,usermail,indata) values('"&username&"','"&usermail&"','"&indate&"')"
conn.Execute(sql)
conn.Close
Set conn = Nothing
说明:建立数据库连接;通过表单获取姓名、E-mail 字符串,Now()获取当前时间日期;使用 insert into 语句添加新记录;conn.Execute 来执行;最后关闭。
(三)、选择数据库里的记录
1.选择所有记录的字段(按记录倒序排序):sql = "select * from data order by ID desc"
2.选择所有记录的姓名和E-mail字段(不排序):sql = "select username,usermail from data"
[资料来源:www.THINK58.com]
3.选择姓名为“风云突变”的所有记录:sql = "select * from data where username='"风云突变"'"
4.选择使用 163 信箱的所有记录(按查看次数排序):sql = "select * from data where usermail like '%"@163.com"%' order by view desc"
5.选择最新的10个记录:sql = "select top 10 * from data order by ID desc"
SQL 语句已经知道了,不过在Web应用时,还得创建一个 RecordSet 对象得到记录集,才能把从数据库里取出的值应用在网页上,如果现在将所有的记录显示在网页上就这样:
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")
sql = "select * from data"
Set rs = Server.CreateObject("ADODB.RecordSet")
rs.Open sql,conn,1,1
Do While Not rs.Eof
Response.Write "<p>姓名:"& rs("username") &" E-mail:"& rs("usermail") &" 查看:"& rs("view") &"次 "& rs("indate") &"加入</p>"
[来源:http://think58.com]
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
说明:建立数据库连接;创建 rs 得到记录集;循环显示记录,rs.Eof 表示记录末,rs.MoveNext 表示移到下一个记录;最后关闭。
(四)、修改(更新)数据库记录
修改记录的E-mail:
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")
ID = 1
usermail = "fytb@163.com"
sql = "update data set usermail='"&usermail&"' where ID="&CInt(ID)
conn.Execute(sql)
conn.Close
Set conn = Nothing
说明:建立数据库连接;获取记录ID、新 E-mail 字符串;使用 update 语句修改记录;conn.Execute 来执行;最后关闭。
如果使记录的查看值加1,则:sql = "update data set view=view+1 where ID="&CInt(ID)
(五)、删除数据库记录
删除某一条记录:
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")
ID = 1
sql = "delete from data where ID="&CInt(ID)
conn.Execute(sql)
conn.Close
Set conn = Nothing
说明:建立数据库连接;获取记录ID;使用 delete 语句删除记录;conn.Execute 来执行;最后关闭。
删除多条记录为:sql = "delete from data where ID in (ID1,ID2,ID3)"
删除所有记录为:sql = "delete from data
[资料来源:http://think58.com]
[资料来源:http://think58.com]
结 论
通过这个认坛的制作,我深化了对ASP技术的了解,也深刻体会到了ASP技术的优越性,坚定了我进一步学习ASP的信心。
致 谢
在此论文的完成过程中,有众多老师的费心指导和一些同学的热情帮助,在此表示万分的谢意。
参考文献
http://www.100down.com/download/default_study.html
百当软件园网络学院
第六章 详细设计与实现
各页面代码如下:
主页面DEFAULT.ASP
<%@ LANGUAGE="VBSCRIPT" %>
<html>
<head>
<title>欢迎光临青年论坛</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
</head> [来源:http://www.think58.com]
<frameset frameborder="1" framespacing="1" border="1" cols="*,86%">
<frame src="left.asp" scrolling="no">
<frameset rows="60%,40%"> [来源:http://think58.com]
<frame name="BoardList" src="about.asp" scrolling="auto" target="main">
<frame name="BoardAnnounce" target="main" src="point.asp" scrolling="auto">
</frameset>
<noframes>
<body>
<p>This page uses frames, but your browser doesn't support them.</p>
</body>
</noframes>
</frameset>
</html>
[资料来源:http://think58.com]
<html><script language="JavaScript"> </script></html>
<html><script language="JavaScript"> </script></html>
链接页面LEFT.ASP
<% @language="vbscript" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Left</title>
<link rel="stylesheet" type="text/css" href="forum.css">
<style type="text/css">
<!--
body {
background-color: #00CCFF;
}
-->
</style></head>
<body>
<p align="center">
<a href="default.asp" target=_top>论坛首页>><br>
<a href="login.asp" target="BoardAnnounce" title="增加、修改、删除版面!">论坛管理>></a><br>
<a href="elogin.asp" target="BoardAnnounce" title="斑竹帖子管理">版面管理>></a><br>
<a href="about.asp" target="BoardList">关于论坛>></a><br>
[资料来源:www.THINK58.com]
论坛版面>></p>
<p align="center">
<a href="List.asp?boardID=1" target="BoardList">团委公告</a><br>
<a href="List.asp?boardID=2" target="BoardList">时事新闻</a><br>
<a href="List.asp?boardID=4" target="BoardList">军事天地</a></p>
<p align="center">
<a href="query.asp" target="BoardAnnounce">论坛帖子查询</a><br>
<a href="myinfo.asp?page=1" target="BoardAnnounce">更改个人密码</a><br>
<a href="myinfo.asp?page=2" target="BoardAnnounce">修改个人信息</a><br>
<a href="myinfo.asp?page=3" target="BoardAnnounce">查询个人信息</a><br>
<a href="point.asp" target="BoardAnnounce">查看积分排行</a><br>
<p align="center"><br> [资料来源:http://think58.com]
在线<%=Application("online")%>人
<p align="center"><script src="http://www.on.net.cn/counter.asp?id=wodeail&style=1"></script>
</center>
</body>
</html> [资料来源:THINK58.com]
论坛积分排行榜POINT.ASP
<%@ LANGUAGE="VBSCRIPT" %>
<% option explicit%>
<!--#include file="newconn.asp"-->
<!-- #include file="inc/char.inc" -->
<!-- #include file="inc/tree.inc"-->
<html> [资料来源:www.THINK58.com]
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>积分</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<link rel="stylesheet" type="text/css" href="forum.css">
<style type="text/css">
<!--
body {
background-color: #00CCFF;
}
-->
</style></head>
[资料来源:http://www.THINK58.com]
<body>
<%
dim rs
dim sql
dim Article
dim username
set rs=server.createobject("adodb.recordset")
sql="select * from user where username ORDER BY Article desc"
rs.open sql,conn,1,1
if rs.EOF then
response.write "not point"
else
%>
<div align='center'><center><table border='1' width='50%' cellspacing='0' bordercolorlight='#000000' bordercolordark='#FFFFFF' cellpadding='0'>
<tr>
<td width="100%" colspan="4" bgcolor='#FEEC85'><table border="0" width="100%" cellspacing="0"
cellpadding="0">
<tr>
<td width="100%" align="center"><b>论坛积分排行榜</b></td>
</tr> [版权所有:http://think58.com]
</table>
</td>
</tr>
<tr>
<td align='center' width='25%'><b>姓名</b></td><td align='center' width='25%'><b>积分</b></td>
<td align='center' width='25%'><b>姓名</b></td><td align='center' width='25%'><b>积分</b></td></tr>
<%do while NOT rs.EOF%>
<tr>
<td align='center' width='25%'><%=rs("username")%></td>
<td align='center' width='25%'><font color=red><%=rs("Article")%></font></td>
<td align='center' width='25%'><%=rs("username")%></td>
<td align='center' width='25%'><font color=red><%=rs("Article")%></font></td>
</tr>
<%
rs.MoveNext
username=username+1
if username>9 then Exit Do
loop
end if
rs.Close
set rs=nothing
%>
</table></center></div>
<div align='center'><center><table border='0' width='50%' cellspacing='0' bordercolorlight='#000000' bordercolordark='#FFFFFF' cellpadding='0'>
<tr><td align='right'><a href='myinfo.asp?page=3' target="BoardAnnounce">查看个人积分>></a><a href='aboutpoint.asp' target="BoardAnnounce">关于积分>></a>
[版权所有:http://think58.com]
</td></tr>
</body>
</html>
论坛简介ABOUT.ASP [来源:http://think58.com]
] [资料来源:http://THINK58.com]
html> [资料来源:www.THINK58.com]
<head>
<meta HTTP-EQUIV="Content-Type" content="text/html; charset=gb2312">
<link rel="stylesheet" type="text/css" href="forum.css">
<style type="text/css">
<!--
body {
background-color: #00CCFF;
}
-->
</style></head> [资料来源:http://think58.com]
<body>
<center>
<table border='1' width='80%' cellspacing='0' bordercolorlight='#000000' bordercolordark='#FFFFFF' cellpadding='0'>
<tr>
<td align=center bgcolor=#FEEC85>
<strong>请注意以下事项</strong></td>
</tr>
<tr>
<td>
<p>本论坛由厂团委创办和管理。</p>
<p>您在本站注册发言便表示您将遵守以下条款 </p>
<ol><li>保持良好言行,不得对他人进行人身攻击;遵守中华人民共和国的一切法律法规;
<li>网友不得张贴无用的重复信息,如果此类帖子数目超过5,将被视为对本站的恶意攻击行为
<li>本站有权对登记网友的账号进行管理,有权对违反上述条款的网友账号进行关闭、删除的处罚
<li>通用用户名:<b>guest</b>,密码:<b>guest</b>
</ol></td></tr>
[资料来源:http://THINK58.com]
<tr>
<td align="center" bgcolor='#FEEC85'><strong>积 分 规 则</strong></td>
</tr>
<tr>
<td>
<li>斑竹在原来的基础上增加200分作为奖励
<li>发一个帖子积分加1分,回复一个帖子积分加1分(多发新帖噢)
<li>被删一个帖子,倒扣1分
<li>采用积分机制只是来活跃论坛的气氛,积分数只是说明网友在本论坛的活跃情况,并不一定代表网友任何方面的个人水平
</td>
</tr> [资料来源:www.THINK58.com]
</table>
</center>
</body>
</html>
[来源:http://think58.com]
论坛管理——管理员登录页面LOGIN.ASP
<html>
<head>
<title>管理者登陆</title>
<link rel="stylesheet" type="text/css" href="forum.css">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"><style type="text/css">
<!--
body {
background-color: #00CCFF;
}
-->
</style></head> [资料来源:www.THINK58.com]
<body>
<div align="center"><center>
<table border="0" cellspacing="1" width="90%">
<tr>
<td> <form method="post" action="chklogin.asp" target="BoardList">
<table width="45%" border="1" cellspacing="0" cellpadding="1" align="center"
bordercolordark="#ecf5ff" bordercolorlight="#6699cc">
<tr>
<td><table width="100%" border="0" cellspacing="1" cellpadding="1">
<tr>
<td width="33%" align="right" height="30">用户名:</td>
[来源:http://www.think58.com]
<td width="67%"><input name="username" maxlength="20" class="smallInput" size="20"> </td>
</tr>
<tr>
<td width="33%" align="right" height="30">密 码:</td>
<td width="67%"><input type="password" name="password" maxlength="16" class="smallInput"
size="20"> </td>
</tr> [资料来源:http://www.THINK58.com]
<tr>
<td colspan="2" height="15"></td>
</tr>
</table>
</td>
</tr>
<tr align="center">
<td height="40">
<input type="submit" name="Submit" value="确定" class="buttonface">
<input type="reset" name="Submit2" value="重写" class="buttonface">
[版权所有:http://think58.com]
</td>
</tr>
</table>
</form>
<p align="center"> </td>
</tr>
</table>
</center></div>
</body>
<script language="JavaScript"> </script>
</html>
论坛管理——管理功能页面BOARDMANAGER.ASP
<%@ LANGUAGE="VBSCRIPT" %>
[来源:http://think58.com]
<% option explicit%>
<!-- #include file="newconn.asp" -->
<html >
<head>
<meta HTTP-EQUIV="Content-Type" content="text/html; charset=gb2312">
<link rel="stylesheet" type="text/css" href="forum.css">
<style type="text/css">
<!--
body {
background-color: #00CCFF;
}
-->
</style></head>
<SCRIPT LANGUAGE="JavaScript">
<!--//
function check3()
{
if ((document.addbt3.name.value.length<1) ||( document.addbt3.cname.value.length<1) )
alert("名字不能为空");
else
document.addbt3.submit();
}
function check4()
{
if ((document.addbt4.name.value.length<1) ||( document.addbt4.cname.value.length<1) )
alert("名字不能为空");
else{
document.addbt4.way.value="修改";
document.addbt4.submit();
}
}
//-->
</SCRIPT>
<body class=clblue>
<% dim strSQL,iBt,i,byOrder,rsB,iB,j
set rsB=server.CreateObject("ADODB.RecordSet")
dim showmaster
%>
<center><b>论坛版面管理区域</b><p>
<b><a href="boardmanager.asp?method=btmodify">增加版面</a></b><p>
<table border=0 width=100%>
<tr>
<td width=70% valign=top>
<%
rsB.Open "select * from Board where boardtype order by boardid desc",conn,1
if rsB.EOF then
response.write "论坛版面不存在:("
else
%>
<div align='center'><center>
<table border='1' width='80%' cellspacing='0' bordercolorlight='#000000' bordercolordark='#FFFFFF' cellpadding='0'>
[来源:http://think58.com]
<tr>
<td width=10% align=center>ID</td>
<td width=25% align=center>版 面</td>
<td width=25% align=center>斑 竹</td>
<td width=40% align=center>操 作</td>
</tr>
<%do while NOT rsB.EOF%>
<tr>
<td width=10% align=center><%=rsB("boardid")%></td>
<td width=25% align=center><a href="boardmanager.asp?method=modify&boardid=<%=rsB("boardid")%>&name=<%=rsB("boardtype")%>"><%=rsB("boardtype")%></a></td>
<td width=25% align=center><a href="mailto:<%=rsB("masteremail")%>"><%=rsB("boardmaster")%></a></td>
<td width=40% align=center>请点击相应版面</td>
</tr>
<%
rsB.MoveNext
loop
end if
rsB.Close
%>
</table>
</td>
<td width=30% valign=top>
<!------------------------------------------------------------------------------------------- -->
<% if request("method")="btmodify" then %>
<form name=addbt3 method="post" action="boardmanager.asp">
增加板面:<br><br>
<INPUT TYPE="hidden" name=method value="added">
版面名称:<INPUT TYPE="text" size=10 NAME="name" class=bline1><br>
斑竹密码:<INPUT TYPE="text" size=10 NAME="cname" class=bline1><br>
斑竹mail:<INPUT TYPE="text" size=10 NAME="email" class=bline1><br>
斑竹姓名:<INPUT TYPE="text" size=10 NAME="userid" class=bline1>
<INPUT name="way" class=buttonface TYPE=BUTTON value="增加" onClick="check3()">
</form>
<%end if%>
<!------------------------------------------------------------------------------------------- -->
<% if request("method")="modify" then
rsB.open "select * from Board where boardid="+request("boardid"),conn,1
if rsB.RecordCount>=1 then
showmaster=trim(rsb("boardmaster"))
%>
<form name=addbt4 method="post" action="boardmanager.asp">
修改信息:<br><br>
<INPUT TYPE="hidden" name=method value="modified">
<INPUT TYPE="hidden" name=id value="<%=request("boardid")%>">
版面名称:<INPUT TYPE="text" size=10 NAME="name" value="<%=rsb("boardtype")%>" class=bline1><br> [资料来源:www.THINK58.com]
斑竹密码:<INPUT TYPE="text" size=10 NAME="cname" value="<%=rsb("masterpwd")%>" class=bline1><br>
斑竹mail:<INPUT TYPE="text" size=10 NAME="email" value="<%=rsb("masteremail")%>" class=bline1><br>
斑竹姓名:<INPUT TYPE="text" size=10 NAME="userid" value="<%=showmaster%>" class=bline1>
<INPUT TYPE="hidden" name=way value="删除">
<br> <INPUT name="way1" class=buttonface TYPE=BUTTON value="修改" onClick="check4()">
<INPUT name="way1" class=buttonface TYPE="submit" value="删除">
</form>
<% rsB.close
end if
end if%>
<!-- ------------------------------------------------------------------------------------- --> [版权所有:http://think58.com]
<% if request("method")="added" then
rsB.open "select * from board",conn,3,2
rsB.addnew
showmaster=trim(request("userid"))
rsB("boardtype")=request("name")
rsB("masterpwd")=request("cname")
rsB("boardmaster")=showmaster
rsB("masteremail")=request("email")
rsB.update
rsB.close
end if %>
<!---------------------------------------------------------------------------------------------->
<% if request("method")="modified" then
if request("way")="修改" then
showmaster=trim(request("userid"))
strSQL="update Board set boardtype='"+trim(request("name"))
[资料来源:THINK58.com]
strSQL=strSQL+"',masterpwd='"+trim(request("cname"))+"',masteremail='"+trim(request("email"))+"',boardmaster='"+showmaster+"' "
strSQL=strSQL+" where boardid="+request("id")
'response.write(strSQL)
rsB.open strSQL,conn,1
else
rsB.open "delete * from Board where boardid="+request("id"),conn,1
end if
end if %>
</td></tr>
</table>
</body>
</html>
<%
conn.Close
set rsB=nothing
set conn=nothing
版面管理—斑竹登录页面ELOGIN.ASP
<%@ LANGUAGE="VBSCRIPT" %>
<% option explicit%>
<!--#include file="newconn.asp"-->
<!-- #include file="inc/char.inc" --> [资料来源:www.THINK58.com]
<html> [资料来源:http://THINK58.com]
<head>
<title>管理者登陆</title>
<link rel="stylesheet" href="forum.CSS">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"><style type="text/css">
<!--
body {
background-color: #00CCFF;
}
-->
</style></head>
[资料来源:THINK58.com]
<body>
<%
dim sql,rs
dim sel
dim boardid
boardid=0
if not (isNUll(request("boardid")) or isEmpty(request("boardid")) or (request("BoardID")="") ) then
boardid=request("boardid")
end if
set rs=server.createobject("adodb.recordset")
sql="select * from board"
rs.open sql,conn,1,1
%>
<div align="center"><center> [版权所有:http://think58.com]
<table border="0" cellspacing='1' width="90%">
<tr>
<td>
<form method="POST" name="frmNewUser" action="echklogin.asp" target="BoardList">
<table width="45%" border="1" cellspacing="0" cellpadding="0" align="center"
bordercolordark="#FFFFFF" bordercolorlight="#000000">
<tr>
<td><table width="100%" border="0" cellspacing='1' cellpadding='1'>
<tr><td width="33%" align="right">版面:</td>
<td width="67%"><select class="smallSel" name="lstBoard" size="1">
<% [来源:http://www.think58.com]
do while not rs.eof
if boardid=cstr(rs("boardid")) then
sel="selected"
else
sel=""
end if
response.write "<option " & sel & " value='"+CStr(rs("BoardID"))+"'>"+rs("Boardtype")+"</option>"+chr(13)+chr(10)
[资料来源:http://THINK58.com]
rs.movenext
loop
%>
</select></td>
<tr>
<td width="33%" align="right" height="30">用户名:</td>
<td width="67%"><input name="username" maxlength="20" class="smallInput" size="20"> </td>
</tr>
<tr>
<td width="33%" align="right" height="30">密 码:</td> [资料来源:http://www.THINK58.com]
<td width="67%"><input type="password" name="password" maxlength="16" class="smallInput"
size="20"> </td>
</tr>
<tr>
<td colspan="2" height="15"></td>
</tr>
</table>
</td>
</tr>
<tr align="center">
<td height="40">
<input type="submit" name="Submit" value="确定" class="buttonface">
<input type="reset" name="Submit2" value="重写" class="buttonface">
</td>
</tr>
</table>
</form>
<p align="center"> </td>
</tr>
</table>
</center></div> [来源:http://think58.com]
</body>
</html>
<html><script language="JavaScript"> </script></html>
版面管理——管理功能页面EMANAGE.ASP [来源:http://think58.com]
[资料来源:http://THINK58.com]
<%@ LANGUAGE="VBSCRIPT" %>
<% option explicit%>
<!--#include file="newconn.asp"-->
<!-- #include file="inc/char.inc" -->
<!-- #include file="inc/tree.inc"-->
<%
if request.cookies("adminok")="" then
response.redirect "elogin.asp"
end if
%>
<html>
<head>
<meta NAME="GENERATOR" Content="Microsoft FrontPage 4.0" CHARSET="GB2312">
<title>青年论坛</title>
<link rel="stylesheet" type="text/css" href="forum.css">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"><style type="text/css">
<!--
body {
background-color: #00CCFF;
}
-->
</style></head>
<body>
<%
dim sql,rs,rsBoard,BoardName,boardsql
dim selStr
dim mailStr1
dim mailStr2
dim boardmaster
'on error resume next
selStr="()"
if session("masterlogin")="true" then
boardID=session("manageboard")
selStr=""
if not isempty(request("page")) then
currentPage=cint(request("page"))
else
currentPage=1
end if
set rsBoard=server.createobject("adodb.recordset")
boardsql="select * from board where boardID="+cstr(boardID)+""
rsboard.open boardsql,conn,1,1
if not rsboard.eof then
boardname=rsboard("boardname")
session("boardtype")=rsboard("boardtype")
boardmaster=rsboard("boardmaster")
if trim(rsboard("masteremail"))<>"" then
mailStr1="<a href='mailto:"+trim(rsboard("masteremail"))+"'>"
mailStr2="</a>"
else
mailStr1=""
mailStr2=""
end if
if boardID>0 then
set rs=server.createobject("adodb.recordset")
sql="select AnnounceID,boardID from bbs1 where boardID="+cstr(boardID)+" and parentID=0 ORDER BY announceID desc "
rs.open sql,conn,1,1
if not rs.eof then [资料来源:http://think58.com]
totalAnnounce=rs.recordcount
dim i
i=0
if currentPage=1 then
do while not rs.EOF
if selstr="" then
selStr=selStr+cstr(rs("announceid"))
else
selStr=selStr+","+cstr(rs("announceid"))
end if
i=i+1
if i>=maxannounce then exit do
rs.MoveNext
loop
[来源:http://think58.com]
else
if (currentPage-1)*maxannounce<totalAnnounce then
rs.move (currentPage-1)*maxannounce
dim bookmark
bookmark=rs.bookmark
do while not rs.EOF
if selstr="" then
selStr=selStr+cstr(rs("announceid"))
else
selStr=selStr+","+cstr(rs("announceid"))
end if
i=i+1
if i>=maxannounce then exit do [版权所有:http://think58.com]
rs.MoveNext
loop
else
currentPage=1
do while not rs.EOF
if selstr="" then
selStr=selStr+cstr(rs("announceid"))
else
selStr=selStr+","+cstr(rs("announceid"))
end if
[资料来源:http://www.THINK58.com]
i=i+1
if i>=maxannounce then exit do
rs.MoveNext
loop [资料来源:http://www.THINK58.com]
end if
end if
dim n
selstr="("+selstr+")"
if selStr<>"()" then
sql="select * from bbs1 where (rootID in "&selStr& " ) ORDER BY rootID desc,orders "
else
sql="select * from bbs1 ORDER BY rootID desc,orders " [资料来源:http://think58.com]
end if
end if
rs.Close
rs.open sql,conn,1,1
showpage session("boardtype"),boardmaster,totalannounce,boardid,mailstr1,mailstr2
showlist()
showpage session("boardtype"),boardmaster,totalannounce,boardid,mailstr1,mailstr2
else
response.write "<p> 版面:"+session("boardtype")+"<br>版主:"+mailstr1+boardmaster+mailstr2+"<br>"
response.write " 本论坛无内容 "
response.write "<p><a href='Announce.asp?boardID="+cstr(boardID)+"' target="+chr(34)+"BoardAnnounce"+chr(34)+">我要发言</a> <a href='emanage.asp?boardID="+cstr(boardID)+"'>刷新浏览</a> " [来源:http://think58.com]
end if
rs.close
sub showlist()
on error resume next
dim outtext
dim bytestr
response.write "<ul>"
dim layer
layer=1
do while not (rs.eof or err.number<>0)
do while layer<> rs("layer")
if rs("layer")> layer then
outtext=outtext & "<ul>"
layer=layer+1
[版权所有:http://think58.com]
else
outtext=outtext & "</ul>" & chr(13) & chr(10)
layer=layer-1
end if
loop
outtext=outtext & "<li>"
outtext=outtext & "<img src=images/"&rs("Expression")&">"
outtext=outtext & "<a href='ShowAnnounce.asp?boardID="+cstr(boardID)+"&RootID="&cstr(rs("RootID"))&"&ID="&Cstr(rs("announceID"))&"' target='BoardAnnounce'>"
dim t
if rs("Length")=0 then
t=" <无内容>"
else
t=" "
end if
if pwsonchsys then
outtext=outtext & htmlencode(rs("Topic")+t)
else
outtext=outtext & Server.HTMLEncode(rs("Topic")+t)
[资料来源:THINK58.com]
end if
outtext=outtext & "</a> - <strong>"
bytestr="("+cstr(rs("length"))
if not WINNT_CHINESE then
if rs("Length")-1=1 then
bytestr=bytestr+" Byte)"
else
bytestr=bytestr+" Bytes)"
end if
else
bytestr=bytestr+"字)" [来源:http://think58.com]
end if
[来源:http://www.think58.com]
if pwsonchsys then
outtext=outtext & htmlencode(rs("UserName"))
else
outtext=outtext & Server.HTMLEncode(rs("UserName") )
end if
outtext=outtext & " </strong><font color=red><em>"&rs("Date
上一篇:011基于ASP的企业物流平台
下一篇:009基于ASP的同学录