演示视频:第4章 详细设计
4.1系统设计原则
现在的Web应用系统多采用B/S模式运行。与C/S模式相比,B/S模式的缺点是网络带宽受限,网络传输存在潜在的安全问题,用户界面设计技术不如C/S模式成熟等。
要充分发挥Web应用的内在潜力,扩大其适应能力,需要采用先进的应用架构和以实用为根本准则,使系统既能满足业务需求,又能适应将来发展。在Web应用系统设计时,要尽量遵循Web应用系统设计原则。这些原则有:
(1)实用性原则
这是所有应用软件最基本的原则,直接决定系统的成败。每一个提交到用户手中的软件系统都应该是实用的,能解决用户的实际问题,否则就是失败的设计。
(2)适应性和可扩展性原则
系统需要具备一定的适应能力,特别是Web应用要适应多种运行环境,以应对未来环境的变化和需求。可扩展性主要体现在系统易于扩展,例如可以采用分布式设计、系统结构模块化设计,系统架构可以根据网络环境和用户的访问量而适时调整。从某种程度上说,这也是系统的适应性。
(3)可靠性原则
系统应该是可靠的,在出现异常的时候应该有人性化的信息方便用户理解异常的原因,或采取适当的应对方案,以确保系统的可靠性。
(4)可维护性和可管理性原则
Web系统应该有一个完善的管理机制,而可维护性和可管理性是两个重要指标。
(5)安全性原则
Web应用系统面临更加严峻的安全威胁,因此,Web应用应尽量采用多层安全体系,如网络层安全、系统安全、用户安全、用户程序安全和数据安全。系统必须具备高可靠性,对使用信息进行严格的权限管理。因此,在技术上应采用严格的安全与保密措施,保证系统的可靠性、保密性和数据一致性等。
3.2 教师/学生/管理员登录设计
在登录页面对应的地方输入用户名、密码,确认后登录。在提交后的php文件中,首先通过账号对数据库中的user表进行检索,若检索到的记录集为空,则说明账号错误,从而转到相应的出错处理程序,若记录集不为空,进而检查密码是否相等,不相等,作出错处理,相等则转入老师/学生/管理员登录成功的操作控制面板,并将账号和用户权限以session对象保存起来。登录界面如图3.1。
图3.3 登录界面
3.3 用户注册
3.4 论坛交流平台设计
此模块主要用于学生和教师交流和讨论学习经验。点击主题后可浏览某留言的内容及回应的内容。学生用户登录后,会在上部出现"发表文章"的链接,进入后输入"主题"和"内容"即可发表。在浏览某留言时会在下部出现回应的文本框,输入内容后即可发表回应。如果是留言或回应的发表人,会在左边出现"删除"链接,点击后即可删除此回应或留言,删除留言时会同时删除此留言的所有回应。
3.5 网站首页设计
网站前台模块主要包含.大学英语考试,学历英语考试,精品文摘,考试指南,英语写作,听力教室,交流论坛等。当然一个受广大师生喜爱的首页设计出来,对颜色和板块的设置是要一番功夫,本人用了流行的web网页设计技术DIV+CSS,以绿色为基调,整体背景采取白色基调.用绿色基调配合白色背景,其他部分采取淡黄色.这样让用户有耳目一新的感觉,长时间停留网站上学习,而不感觉到疲劳,.截图如下
3.6 学生在线考试的设计
教师在添加完自测题以后,设置好相关时间,学生可以进去可在一定时间阶段内进行在线自测,此模块设计采取从简的做设计方法,就是用一个表来保存试题,一个字段来保存试题答案,输入时在输入框用回车区分各试题选项,这样能打破一个问题,4个答案的限制,输出时在根据回车字符截取输出,这一模块是系统难点也是重点,在下一节设计过程遇到的问题有特殊说明.
系统主要截图如下
3.7 听力教室
实现代码
3.7 后台设计
第5章 设计过程中的问题及解决
3.1 用PHP程序访问Mysql数据库的方法和程序
(1)用PHP程序访问Mysql数据库的方法比较简单,具体步骤如下:
用函数mysql_connect(string[server],string[username],string[password])建立与Mysql服务器的连接,如连接成功,函数返回一个连接标识;否则,返回FALSE,表明连接失败。这里,参数server可以写成"host-
name:port"的形式。如果函数调用中未填写参数server,则缺省为server=‘localhost:3306’,缺省用户名为数据
库服务器进程的拥有者。
(2)mysql_select_db(database_name,resource[link_identifier])函数设置与指定数据库连接标识相关的当前活动数据库。如缺省连接标识,则使用前面已经建立的连接;如前面没有建立连接,则函数试图建立一个连接后再设置与指定数据库连接相关的当前活动数据库。函数调用成功,返回TRUE;否则,返回FALSE。
3.2 在线考试的设计的思路和程序
此模块设计本人可谓费尽心思,普通的在线考试系统,都在至少10个表以上,一定程度上给数据库设计和程序设计带来了麻烦,由于本系统是个英语学习网站,考试测验如果像其他考试系统那个完善,以本人现有能力和有限的时间,是在不堪重任,所以本考试系统采取从简的做法,设置2个表,就完成了此在线考试,一个表用来存储试题类型,一个表用来存取考题,.
尤其是存取考题到数据库这部分,我把试题答案的4个选项
存到一个字段里,输入的时候,在输入框用回车区分每个试题答案,数据取出的时候,在吧试题单按拆分
循环输入到网页上,正确答案单独保存到一个字段,用来测试完毕后交卷的视乎,自动判断正确与否.