1、定稿基于ASP的个人小说网站的设计与实现项目可行性研究报告基于ASP的个人小说网站的设计与实现项目可行性研究报告第一章 绪 论1.1背景当计算机网络在人们生活的各个领域迅速曼延之时,人们获取信息的方式也更加的直接迅速,网络化使信息领域变得更为广泛,在也没有了时间和空间的限制.人们获取信息大部分是通过网站的方式得到的.因此网站建设在Internet应用上的地位显而易见,而本网站的制作是为人们在精神食粮的获取上起到大大小小的作用.在网络发表小说不管对读者还是对小说作者都是有直接好初的,对于读者来说不光在网络上迅速得到作者最新发表的小说,而对于小说读者来说把作品发表在网络上他能以最快的速度获得到读者
2、对作品的意见.这样作者可以最快的修改错误为书籍的出版做好准备.这样便捷的交互方式,即通过先进的计算机和网络技术,克服地域的限制.作者和读者之间直接的交流.1.2关于小说网站的设计与实现对于开发的小说网站来说其实是建立在HTTP开放的网络标准之上的,采用浏览器/服务器(B/S)模式,使读者在系统的前台方便阅读小说的一个小说系统.系统的表示层用WEB方式实现,具有安全性和开放效率;数据用微软数据库系统:ACCESS,以提高数据可用的效率和数据的完整性.1.3 系统开发工具选用及简介1.3.1 ASP简介在网络开发的众多语言中,IIS(Intemet information Server Web服务
3、器)+ASP(Active Server Pages编程语言)+Acces(数据库)的方案组合都是Microsoft公司的产品,它们在搭建BrowserServer结构的三层模式网站上相对容易,且此方案中ASP可以通过ADO技术不用在服务器端进行人工设置,写入程序代码就可以方便地访问数据库,实现了信息的动态存储.所以它们成为众多的基于Web下语言开发中的主流方案.ASP是一般运行在Web服务器IIS上的,在ASP出现之前,网站的开发效率是非常低的,即使单个页面布局的微小变动,往往都需要重新设计页面的源代码.ASP技术的推出,使网站的建设成了一件很容易的事.ASP(Active Server P
4、ages,活动服务器页面)是微软公司推出的可与用户建立交互式关系的脚本环境,在这个环境下可以通过创建服务器端脚本来实现动态交互式Web页面和强大的Web应用程序等功能.可以和HTML语言包括相关的客户端脚本、Java小程序等混合在一起编写.ASP语法比较简单,属于面向对象的技术和组件技术,这样,复杂的操作和交互过程就可以被封装起来.在进行网页制作时只需使用ASP的脚本语言和内置对象及服务器组件,不必考虑其内部的运行机制.ASP的优势:任何开发工具都可发展ASP,语言相容性高,隐密安全性高,易于操控数据库,面向对象学习容易.1.3.2 Microsoft Access 简介 作为Microsof
5、t的office套件产品之一,Access已经卖出了近700万份,成为世界上最流行的桌面数据库系统.Access与许多优秀的关系数据库一样,可以让你很容易地连接相关的信息而且还对其他的数据库系统有所补充.它能操作其它来源的资料,包括许多流行的PC数据库程序(如dBASE,Paradox,Microsoft FoxPro)和服务器、小型机及大型机上的许多SQL数据库.Access还完全支持Microsoft的OLE技术.Access还提供windows操作系统的高级应用程序开发系统.Access与其它数据库开发系统之间相当显著的区别就是:您不用写一行代码,就可以在很短的时间里开发出一个功能强大而
6、且相当专业的数据库应用程序,并且这一愉快的过程是完全可视的!如果您能给它加上简短的VBA代码,那么您的程序决不比专业程序员潜心开发的程序差.Access 数据库管理系统是Microsoft Office 套件的重要组成部分,是Access的最新版本,可在Windows 95环境下运行.Access适用于小型商务活动,用以存贮和管理商务活动所需要的数据.Access不仅是一个数据库,而且它具有强大的数据管理功能,它可以方便地利用各种数据源,生成窗体(表单),查询,报表和应用程序等.Access将所有有名字的东西都成为对象(object),最重要的对象有表,查询,窗体,报表,宏和模块.1.3.3
7、Macromedia Dreamweaver MX选用Macromedia Dreamweaver MX 来创建专业网站的是最佳途径, 同时Macromedia Dreamweaver MX 是一种专业的 HTML 编辑器,用于对 Web 站点、Web 页和 Web 应用程序进行设计、编码和开发.无论您喜欢直接编写 HTML 代码的驾驭感还是偏爱在可视化编辑环境中工作,Dreamweaver 都会为您提供帮助良多的工具,丰富您的 Web 创作体验. 利用Dreamweaver 中的可视化编辑功能,您可以快速地创建页面而无需编写任何代码.不过,如果您更喜欢用手工直接编码,Dreamweaver
8、还包括许多与编码相关的工具和功能.并且,借助 Dreamweaver,您还可以使用服务器语言(例如 ASP、ASP.NET、ColdFusion 标记语言 (CFML)、JSP 和 PHP)生成支持动态数据库的 Web 应用程序.1.3.4 页面设计工具的选择目前有大量的软件用来设计和制作网页,他们可以极大的减轻工作量,提高设计效率.其中Macromedia Dreamweaver MX,功能强大,而且是所见即所得的网站编辑器,并带有站点管理功能.Dreamweaver是唯一提供Roundtrip HTML、视觉化编辑与原始码编辑同步的设计工具.Dreamweaver成功整合动态式出版视觉编辑
9、及电子商务功能,提供超强的支援能力给Third-party厂商,包含ASP, Apache,BroadVision, Cold Fusion,iCAT, Tango与自行发展的应用软体.当您正使用Dreamweaver在设计动态网页时,所见即所得的功能,让您不需要透过浏览器就能预览网页.Dreamweaver将内容与设计分开,应用於快速网页更新和团队合作网页编辑.建立网页外观的样版,指定可编辑或不可编辑的部份,内容提供者可直接编辑以样式为主的内容却不会不小心改变既定之样式.您也可以使用样版正确地汇入或输出XML内容.1.3.5 程序调试工具在本次作品中.我使用的是简易IIS服务器来调试本系统.
10、简易IIS服务器,只有一个文件,并且才648K大小.选择此工具的理由:1没有安装IIS; 2没有安装VS开发平台; 3想快速的浏览Asp.Net做的网站; 4小巧并且方便拷贝.第二章 系统总体设计 2.1 系统功能模块总体设计从读者对小说网络的需求入手,逐步分析各个模块,进行系统模块设计、数据库的设计,然后实现一个模块,最后呈现一个完整的网络小说. 对于本小说阅读网站主要分为前台和后台两大的系统.,下面是对两个模块的分析;根据系统的需求分析,可画出系统的总体框架,如下图3-1所示:前台系统后台系统注册登录模块系统设置小说阅读模块密码管理模块小说搜索模块小说管理模块 图3-1 系统前台模块2.2
11、 设计描述系统模块功能集合具体设计 在上节功能模块的描述,能很方便的看出小说系统的布局,每一个功能模块都需要针对不同的表完成不同的数据库操作.下面简单的介绍了每个模块的具体功能和用途;本网站的重点则是在小说展示.在页面上可以看到小说的图片、名称以及介绍.由于是展示给读者看的小说信息,此处功能设计为,点击页面上的小说,会另外打开一页,显示小说的详细内容.显示的详细信息有:包括小说信息编号、小说信息标题、小说信息内容、小说信息的作者、操作等等.当然还有小说图片的小图预览.网站公告由于是长期不改动的内容,所以采取了直接从文本文件读取的方式.后来想想这样不适合在INTERNET上管理,但是由于是长期不
12、会变动的东西,所以并无影响.如果要改动信息,可以直接在文本文件里改动.在小说后台管理中,每一处管理都是对应前台的每一个模块,这样做到不出现不必要的错乱和差错.第三章 系统详细设计3.1 登录和注册功能模块3.1.1 登录功能模块登录模块使已注册用户通过用户名和密码登小说网本网站的登录很简单,没有单独的页面,而是设置在网站首页的顶端,也即模板页的顶端,用户登录前后模板将发生改变,登录界面如下图3.1.1所示.图 3.1.1 登录模块界面 登录模块的主要代码如下: if request(admin)= 登 陆 thendim GetCode,valicodeCode=int(request.for
13、m(code)valicode=int(Session(GetCode)if Codevalicode thenresponse.write alert(验证码错误!);location=login.asp;response.endend ifset rs=server.CreateObject(ADODB.RecordSet)sql=select * from admin where user=&request.form(UserName)&rs.Open Sql,conn,1,1if rs(password)md5(request.form(PassWd) thenresponse.wri
14、tealert(用户或密码错误!);location.href=javascript:history.go(-1);response.endelseResponse.Cookies(pass)=rs(password) Response.Cookies(pass).expires=date+2Response.Cookies(user)=rs(user) Response.Cookies(id).expires=date+2response.redirect admin.aspend ifrs.closeend if%登陆页面function CheckForm() if (document.
15、form1.UserName.value=) alert(用户不能为空!); document.form1.UserName.focus(); return false; if (document.form1.Passwd.value=) alert(密码不能为空!); document.form1.Passwd.focus(); return false; if (document.form1.code.value=) alert(验证码不能为空!); document.form1.code.focus(); return false; 3.1.2 注册功能模块 注册它使得用户可以对该网站申
16、请用户名和密码,注册流程如下3.1.2图:图 3.1.2 登录模块界面 该模块用于读者注册该小说网站的用户,在注册时,用户必须输入用户名和密码,邮箱为选填项用户注册页面如下图3.1.3所示:图 3.1.3 新用户注册图3.2 小说阅读功能模块 本模块主要有小说首页、小说分类展示及小说内容页实现的展示.实现主页面如下图3.2.1所示:图3.2.1 小说网站主页 首页文件名为index.html,重点展示小说,并在右边显示小说排行榜和联系方式,以便给访客留下较好的第一印象.主要代码如下: 玄幻小说,武侠小说,网游小说,言情小说 - 晨曦小说网 搜索小说 首 页实现 实现分类小说分类页面如下图3.2
17、.2所示:图3.2.2 分类小说分类页主要代码如下: $H_title$ - $web$当前位置:首页 $weizhi$biaoti$html$title$是一本非常好的书,情节动人,文笔优美.为了让作者 “$zuozhe$” 能提供更多更好的作品,请您花钱购买该书!© $year$ $web$ All Rights Reserved.3.3 搜索小说功能模块 在本网站中,有多个页面都能进行小说搜索的操作,主要是在首页以及个人主页,为了方便读者快速方便的找到小说,该网站为用户提供了三种方法,用户可以分别从小说名、小说作者以及小说类型进行搜索,点击搜索菜单,如果在数据表中找到指定小说将
18、会在单独页面进行显示,然后用户点击阅读即可进行小说阅读. 搜书是为了使读者更加方便快捷的找到自己想要阅读的小说,搜书功能模块的界面如图3.3所示.图 3.3 搜书界面该功能实现的主要代码如下: protected void SoushuBtn_Click(object sender, EventArgs e) connection.Open();/打开数据库连接 SqlCommand Command = new SqlCommand();/定义command对象 Command.CommandText = select * from 搜书 where 小说名= + this.TextBox3.
19、Text + ;/定义Command的方法 Command.Connection = connection;/定义Command的数据库连接 SqlDataReader Dr;/定义记录集对象Dr Dr = Command.ExecuteReader();/执行查询操作 if (Dr.Read()/如果Dr中有数据就执行 /将文本框中的数据赋值给session SessionxiaoshuoID =this.TextBox3.Text; Sessionzuozhe = Dr作者.ToString();/同上 SessionImage = Dr图片.ToString();/同上 Sessioni
20、ntroduce = Dr介绍.ToString();/同上 Sessionadress = Dr地址.ToString();/同上 Response.Redirect(小说首页.aspx);/跳转到小说首页界面 Dr.Close();/关闭记录集 connection.Close();/关闭数据库连接 3.4 密码修改功能模块修改密码可以使用户为了方便记忆而改掉之前的密码,这也大大提高了用户的安全性保障.修改密码步骤如下:1输入原密码 ;2输入新密码:3重复输入新密码;4点击确认提交;5提交失败重复上述操作.在本网站中,密码修改功能在个人主页中实现,用户需先登录该网站,然后进入个人主页,点击
21、密码修改按钮进行修改操作.密码修改模块的界面如图3.4.1所示.图 3.4.1密码修改界面 该密码修改模块的流程图如图3.4.2所示:图 3.4.2 密码修改流程图其主要实现代码如下:protected void PswChangeBtn_Click(object sender, EventArgs e) SqlCommand myCommand = new SqlCommand(); /定义command对象 myCommand.CommandText = select * from yonhu where username= + Session用户名 + and psw=+this.Tex
22、tBox2.Text+ ;/定义查询语句 myCommand.Connection = connection;/定义command对象数据库连接 connection.Open();/打开数据库连接 SqlDataReader Dr; /定义记录集对象 Dr = myCommand.ExecuteReader();/执行查询操作 if (Dr.Read()/如果记录集Dr中有数据则执行 if (this.TextBox3.Text = this.TextBox4.Text)/如果新密码等于重密码 Dr.Close(); /关闭连接 SqlCommand myCommand1 = new Sql
23、Command(); /定义command对象 myCommand1.CommandText = update yonhu set psw= + this.TextBox3.Text + where username= + Session用户名 + ;/定义SQL语句 myCommand1.Connection = connection; /定义command对象数据库连接 myCommand1.ExecuteNonQuery(); /执行更新操作 Response.Write(alert(密码修改成功);/提示成功 else Response.Write(alert(重复密码出错);/提示出错 else
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1