。
前面一个表示标记开始起作用,下面表示这种标记的作用。
个别标记是单个的。
标记可以嵌套使用,也不区分大小写。
2.HTML主要标记
表示这是一个HTML文档。
〈head〉
〈title〉〈/title〉位于文档头部,浏览时显示在浏览器标题栏中。
〈body〉〈/body>表示文档主体部分.
3.标记的属性
大部分标记都可以使用各种修饰属性,如排列属性align、背景色backcolor、宽度width、高度height等属性。
第2章系统分析
2。
1可行性分析
已具备的条件:
用户可以查看各类新闻以及下载相关资源;管理员可查看、发布、修改、删除新闻,以及对密码修改.
待解决的问题:
数据库的构建、库的连接、各个表的创建、代码编写、页面的设计实现、数据调用、系统数据库安全实现。
旅游管理与地理科学学院的系统免费运行在呼伦贝尔学院的网站服务器上,系统由本人制作,系统的后期维护也是由本人免费维护。
系统的制作和运营的成本特别低.
采取的编程语言和数据库:
ASP编程语言和Access数据库.
枝术可行性方面,该网站使用ASP作为编程语言,具有效率高、可重用性强、代码量少等优点。
Access为数据库环境,具有强大的存储功能和查询功能。
经济可行性方面,由于该系统由本人制作,而且系统服务器由呼伦贝尔学院已经运行的服务器作为本系统的服务器端,维护人员由旅游管理与地理科学学院学生维护,系统操作简单,只需要半天培训即可使用.运行可行性方面,该系统运行时分为两种权限:
普通用户、管理员用户.实现各个不同用户的操作权限.
通过对上述几方面进行可行性分析和研究后,我们认为该项目的开发是可行的。
2.2需求分析
客户可以在链接网络的计算机上在线浏览旅游管理与地理科学学院的信息和下载学院的资源,但是没有发布和修改系统信息的权限;本系统目前设定一个超级管理员,当管理员登录后可以发布、编辑和删新闻,通过后台编辑新闻置顶属性,可以使首页某个栏目新闻置顶显示,同样管理员也可以修改登录密码。
系统使用ASP语言编写,管理员发布信息后,提交到验证页面,由系统的JavaScript语句验证管理员发布的信息是否合法,如果合法就写入数据库,之后就能够被子程序调用到系统前台的相应目显示,否则管理员重新填写数据。
管理员在对信息修改后,提交到数据验证页面对数据的合法性进行验证,例如某个数据不能为空.
在系统安全方面,首先当系统管理员登陆的时候,系统会自动记录用户登录的信息,包括用户登录的IP地址和用户名称等,如果系统出现了数据的丢失问题,就可以通过出现问题的时间段,查询到数据库中的用户登录IP地址,从而进一步的查到使用人。
其次,如果通过系统后台删除数据,数据是可以恢复的,系统后台的删除只是给数据标记了一个删除标记,在前台的数据调用是排除了标记删除的数据.然后,对数据库的名称加入特殊的字符“#”,可以防止非法用户下载数据库,从而获得数据库的管理员账号和密码;数据库中加入了一个防止下载的表,数据库的字段值是OLE对象,如果用户非法下载数据库,那么就会被中断,因为网络不允许对OLE对象进行下载.再次,对后台的每一个管理页面进行了用户是否登录验证,防止非法用户在没有登录的状态下对后台的数据进行修改。
最后,对数据库的用户密码进行了MD5加密,管理员的密码长度越长,MD5被破解的难度就会加大。
系统主要由学院概况,机构设置,党团建设,教育教学,科学研究,招生就业,校友之窗,文件下载以及网站首页还有一个快捷功能模块入口,其中包含实践教学,导游资格考试,学生讲坛,学子风采,体验旅地这几个功能模块组成.学院概况栏目主要简绍了学院的领导和学院的历史以及学院的现有状况;机构设置栏目主要对现有的党政领导、工会、学术委员会、教学委员会和院内环节的负责人进行了简单的简绍;党团建设栏目主要对党务工作、工会工作和学生工作中的重要事件进行发布;教育教学栏目主要对现有的教师队伍的人员进行了简单的简绍等一些主要功能。
系统的功能图如图2—1所示。
图2—1主要功能模块图
打开系统后,普通用户可以浏览系统前台各个栏目的文章,也可以打开资源下载页面,下载需要的资源.管理员登陆系统后,可以对各个栏目的文章进行发布和修改,对资源进行发布,对管理员密码进行修改。
其流程图如图2-2所示.
图2-2系统流程图
第3章系统设计
3.1基本结构和处理流程
当用户为管理员时系统主要分为以下几个功能模块:
管理员登录模块,密码修改模块,信息发布、修改和删除模块,系统退出模块。
管理员登陆模块主要是通过验证用户输入的用户名、密码和验证码是否和数据中的值匹配从而使管理员登陆,管理员登陆后,系统会生成一个session会话,用来标记管理员登陆,之后有权限打开后台的其它模块。
当管理员登陆后才能进入密码修改模块,用户输入旧的管理员密码和俩个相同的新密码才能修改密码。
管理员登陆后才能对信息进行发布、修改和删除.管理员点击退出模块,系统清除用户登陆的session会话[5],用户安全退出,并返回到系统首页。
当用户是普通用户时系统分为以下两个模块:
前台新闻浏览,和前台资源下载。
普通用户不需要登陆就可以查看系统前台各个栏目的文章,以及下载相关资源。
其功能模块图,如图3—1所示。
图3-1能模块图
3.2数据库设计
根据系统功能设计的需求、系统安全以及功能模块的划分,所需数据库信息存储表有4张,其中主要表的具体设计如下。
系统采用ACCESS数据库,首要问题是建立后台的数据库。
数据库中的数据资料来源于旅游管理与地理科学学院教学过程中的各种资料数据。
经过仔细比较和综合之后,充分考虑便于管理和执行效率,建立信息数据库,分别命名为:
j_admin表(管理员登陆表)、j_log表(用户登陆信息记录表)、j_news表(学院新闻表)、〈%nodown表(这个表主要功能是防止下载本网站的数据库)。
1.管理员登陆表:
管理员表记录了管理员的登陆密码和登陆的IP,以及加入了权限和随机数这两个字段,方便日后系统的进一步升级,具体数据见表3—2。
表3—2j_admin
字段名称
数据类型
字段大小
必填字段
ID
自动编号
5
是
AdminName
文本
18
是
UserName
文本
18
否
PassWord
文本
18
是
Purview
数字
2
否
LastLoginIP
文本
18
否
LastLoginTime
日期/时间
19
否
LastLogoutTime
日期/时间
19
否
LoginTimes
数字
5
否
RndPassword
文本
18
否
2.用户登陆信息记录表:
用户登陆信息表记录了管理员每一次登陆的部分信息,例如用户登陆的IP地址、登陆的日期等,作为管理员登陆日志,具体数据如表3—3所示
表3—3j_log
字段名称
数据类型
字段大小
必填字段
LogID
自动编号
5
是
LogType
文本
2
否
ChannelID
数字
2
否
LogTime
日期/时间
19
是
UserName
文本
18
是
UserIP
文本
18
是
LogContent
文本
225
否
ScriptName
文本
225
否
PostString
备注
225
否
3.防止下载表:
这个表的建立不是用来存储数据的,是用来防止非法用户下载数据库的,Access的数据库被下载的时候也是做为ASP的解释程序。
当出现了“〈%”时服务器会认为是ASP的分界符。
而后面的数据肯定是二进制的。
所以不能下载,具体数据如表3—4所示
表3—4<%nodown
字段名称
数据类型
字段大小
必填字段
〈%
OLE对象
4.学院新闻表:
用来存放学院所有新闻和资源文章,DelFlag是用来作为记录被删除的标记,记录被调用时,会按照top字段和以及日期字段进行排序,具体数据如表3—5所示
表3-5j_news
字段名称
数据类型
字段大小
必填字段
id
自动编号
5
是
title
文本
38
是
connect
备注
225
是
time
日期/时间
19
是
adder
文本
18
是
hits
数字
5
否
class
数字
5
否
newid
数字
5
否
DelFlag
布尔
否
top
数字
1
否
3.3数据库E—R图
在系统的数据库设计中,先要对系统分析得到的数据库字典中的数据存储进行分析[4],分析各数据存储之间的关系,然后得出系统的关系模式,为了把用户的数据要求清晰明确地表达出来,通常要建立一个概念性的数据模型(也称为信息模型)[5]。
概念性数据模型是一种面向问题的数据模型,是按照用户的现实环境,且与在软件系统中的实现方法无关.最常用的表示概念性数据模型的方法,实体—联系图(EntityRelationshipDiagram)[6]。
这种方法用E—R图描述现实世界中的实体,而不涉及这些实体在系统中的实现方法。
用干这种方法表示的概念性数据模型又称为E—R模型。
E—R模型中包含“实体、联系、属性”三部分[7]。
管理员包括:
编号,名字,会员名,密码,登录IP,登录时间,退出时间,登录次数,验证码,实体属性图如图3-6所示:
图3—6管理员实体属性图
登录日志包括:
编号,日志类型,频道ID,操作时间,操作人,IP地址,操作信息,程序名,参数内容,实体属性图如图3-7所示。
图3—7登录日志实体属性图
新闻包括:
编号,标题,内容,日期,添加人,阅览次数,类别,排序,删除标志,置顶,实体属性图s如图3—8所示。
图3-8新闻实体属性图
下面给出本系统的E—R图如图3-9所示.
图3-9E—R图
3.4系统的特点
1.管理界面友好
本系统在开发过程中,严格遵循系统的界面可视化风格。
界面简洁统一,易学易用。
交互性强,易于大多数人群操作。
2.操作简单
在数据提交的过程中,加入了JavaScript语句判断[8],如果用户输入错误就会有相应的错误提示。
3.代码编写方面
系统前台使用了目前流行的DIV+CSS进行布局[9],代码加载速度快,兼容性好,适应多种浏览器浏览。
4.安全方面
对数据库进行了防下载、防注入等方面的安全防范[10]。
数据库对用户每次登录进行了详细的记载。
5.SEO优化
本网站进行了简单的SEO优化,对网站关键字和描述方面进行了优化[11],并且在网站根目录下建立了robots。
txt和网站地图,方便搜索机器人的采集和收录,防止非法搜索机器人搜索,占用大量的服务器资源。
6.用户密码防泄露
本站点对用户的密码进行了MD5加密[12],即使数据库泄露也不会马上破解用户登陆密码。
第4章系统实现
4。
1后台设计
4.1.1页面登陆实现
功能描述:
用户输入用户名、密码和验证码后,点击登录,系统首先会验证用户名、密码和验证码是否为空,如果有一个以上的为空,提示用户名、密码或验证码为空并返回重新登录;如果用户名、密码和验证码都不为空,然后系统测试验证码是否正确,如果不正确提示验证码错误,返回重新登录,如果正确,验证密码和用户名称是否正确,如果都正确就登录成功,系统会做一个session会话[13],用来记录管理员已经登录,之后转入管理界面,否则提示密码或用户名错误并返回重新登录。
其页登陆界面如图4-1所示,用户登录模块的程序流程图如图4—2所示.
图4-1管理员登录界面
图4-2程序流程图
部分主要代码如下:
<%
Dimsql,rs
DimUserName,Password,CheckCode,RndPassword
UserName=ReplaceBadChar(Trim(Request("UserName")))
Password=ReplaceBadChar(Trim(Request(”Password")))
IfUserName=”"Then
FoundErr=True
errmsg=errmsg&”用户名不能为空!
"
EndIf
……
IfCheckCode〈〉Session("CheckCode")Then
FoundErr=True
errmsg=errmsg&”您输入的验证码和系统产生的不一致,请重新输入.”
EndIf
……
ifmd5(Password)<>rs("PassWord”)then
response.Redirect”jxgAdmin_login.asp"
endif
ifUserName<>rs(”UserName”)then
response.Redirect”jxgAdmin_login.asp”
endif
RndPassword=GetRndPassword(16)
rs(”LastLoginIP”)=TrueIP
rs("LastLoginTime")=Now()
rs(”LoginTimes”)=0
rs。
Update
Conn。
Execute("InsertIntoJ_Log(LogType,ChannelID,LogTime,UserName,
UserIP,LogContent,ScriptName)values(1,0,"&
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1