1、 仲恺农业工程学院毕 业 设 计基于 web 的同学校友录的设计与实现姓 名 院(系) 信息科学与技术学院专业班级 电子信息工程 093学 号 200910314305指导教师 职 称 讲师论文答辩日期 2013 年 5 月 18 日仲恺农业工程学院教务处制学生承诺书本人郑重承诺此论文是在老师的指导下独立完成的,除了文中特别加以标注和致谢的地方外,论文中不包含其他人发表或撰写过的研究成果。相关文献的引用已在论文中作了明确的说明。论文与资料若有不实之处,本人愿意承担责任,特此声明。签名:_年 月 日摘 要通过提供便捷的校友录平台和人性化校友录的管理,可增强校友之间的学术、创新、生活交流,促进本校
2、的信息化建设乃至学科文化发展。本系统可方便同学自主更新的班级同学录中的个人通信信息以及发表个人最新信息状态等。系统采用 DIV 和CSS 进行网页标准布局,使用开源 PHP 语言作为前台开发工具,开源 MYSQL 作为后台数据库平台的管理系统。该系统采用开源语言方便进行多平台的移植和设计,系统实施采用原型法来有效避免开发过程中的盲目问题,充分发挥其中优势,保证系统的正常实施。关键字:web 校友录系统 网络 PHP目 录1 前言 .12 系统需求分析 .12.1 同学校友录系统需求 .12.2 系统功能结构 .22.3 开发环境 .22.4 开发工具介绍 .22.4.1 PHP 语言概述 .2
3、2.4.2 MYSQL 概述 .32.4.3 EASYECLIPSE FOR PHP 概述 .32.5 数据库连接 .33 系统总体设计 .43.1 系统结构设计 .43.2 数据库设计 .64 详细设计 .74.1 系统结构 .74.2 功能模块设计 .94.2.1 用户登录界面 .94.2.2 信息发布界面 .94.2.3 信息浏览界面 .114.2.4 用户中心界面 .125 程序测试及发布 .126 结论 .15参考文献 .15致 谢 .1701 前言当今超摩尔定律的计算机软硬件发展,同时也造就了计算机网络全方面融入生活的极大变革 1。信息化的今天,通过计算机网络基于各种平台,使用人性
4、化的在线服务能随时随地的联系朋友、同学;发表个人的状态、日志、微博。目前,中国网上有很多大型的网络公司提供校友录服务,例如搜狐 ChinaRen 校友录、腾讯 QQ 校友等。但多数这类校友录在市场经济作用下更注重盈利,大量的广告、娱乐性质的内容充斥其中。只适合个人用户的娱乐、交友。国外也出现很多类似校友录的 SNS 网站,但其面对对象主要是公司员工、社会大众,其娱乐交友性质也很强 2。为了改变当前的校友录的不足,因此本系统采用 DIV+CSS 网站标准,html4 语言开发,而且网页符合 w3c 标准,能在 Windows、MAC、Linux、Symbian、Android 等平台以及 IE、
5、火狐、Chrome、Opera 等各种主流浏览器下正确完整通过测试,正常运行。系统基于 web2.0 交互式设计,可以使用手机进行访问。以注册校友可以随时通过电脑、手机来发表信息、评论信息。对注册校友提供文件共享留言空间,建立学术文件交流平台,注册校友用户可以自由评论、发表意见。建立一个注重于学习交流、创新共享、答疑互助的方便快捷的平台。在今天由于网络教学需求量的增加,以教学、学术交流为主流校友录得到发展,符合了高校人才创新,优势互助的发展理念;也是高校打造非盈利性校友录网站的先驱。计算机网页技术的发展,使得很多传统的 web 1.0 网站无法满足用户的丰富需求。其网页落后的 table 嵌套
6、框架也无法满足多平台的应用。 PHP(Hypertext Preprocessor,超文本预处理器)在计算机的快速发展中让传统的 html 静态网页的不足与用户高需求的矛盾得到了有效的解决之道 3。PHP 能在各种主流系统(包括及其变种系统)中很方便的进行跨平台运用,采用 PHP5 语言开发的系统能很好的兼容,满足各种不同用户的需要。同时系统也采用被广泛应用在 Internet 上的中小型网站中的 MySQL 数据。其体积小、速度快、成本低,能更好的维护、备份网站信息。2 系统需求分析2.1 同学校友录系统的需求建立一个高效、快速、易用的基于 web2.0 技术 PHP5 构建的校友录系统,通
7、过它1让注册用户可以随时随地与校友、同学保持更紧密的联系,及时了解他们的动态;与他们分享的生活和创新、即时交流。并且分享个人、思想等信息,以知识型信息为主。2.2 系统功能结构系统主要包括首页、用户登录和后台登录。首页显示在线帮助、网站介绍,提供后台登录链接和用户登录表单验证。用户登录后进入到用户中心,用户中心包括可使用留言板和通讯录功能。后台登录管理员登录后可以进行留言板和通讯录的信息修改和系统信息修改,直接对数据库进行修改。图 1 基本网站结构图2.3 开发环境本基于 WEB 的同学校友录采用目前 Internet 上流行的网站构架方式是LAMP(Linux+Apache+MySQL+PH
8、P) ,即使用 Linux 作为操作系统,Apache 作为 Web 服务器,MySQL 作为数据库,PHP 作为服务器端脚本解释器。本程序能够稳定运行于支持 PHP 5.3.5 环境的 windows2000 以及 linux 系统服务器上。PHP 是一种被广泛应用的开放源代码的多用途脚本语言,它可嵌入到 HTML 中,尤其适合 WEB 开发。 PHP 能够用在所有的主流操作系统上,包括 Linux、Unix 的各种变种、Microsoft Windows、Mac OS X、RISC OS 等 8。对于大多数的服务器, PHP 提供了一个模块;还有一些 PHP 支持 CGI 标准,使得 PH
9、P 能够作为 CGI 处理器来工作。2.4 开发工具介绍2.4.1 PHP 语言概述 首 页在线帮助用户登录留 言 板通 讯 录网站介绍信 息 修 改系 统 修 改后台登录2PHP 是一种 HTML 内嵌式的语言,PHP 与微软的 ASP 颇有几分相似,都是一种在服务器端执行的嵌入 HTML 文档的脚本语言,语言的风格有类似于 C 语言,现在被很多的网站编程人员广泛的运用。PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。它可以比 CGI 或者 Perl 更快速的执行动态网页。用 PHP 做出的动态页面与其他的编程语言相比,PHP 是将程序嵌入到 HTML 文档中去
10、执行,执行效率比完全生成 HTML 标记的 CGI 要高许多;与同样是嵌入 HTML 文档的脚本语言 JavaScript 相比,PHP 在服务器端执行,充分利用了服务器的性能;PHP 执行引擎还会将用户经常访问的 PHP 程序驻留在内存中,其他用户在一次访问这个程序时就不需要重新编译程序了,只要直接执行内存中的代码就可以了,这也是 PHP 高效率的体现之一。PHP 具有非常强大的功能,所有的 CGI 或者 JavaScript 的功能 PHP 都能实现,而且支持几乎所有流行的数据库以及操作系统 4。 2.4.2 MYSQL 概述MYSQL 相比其他数据库系统具有以下特点和优势:(1)使用 C
11、 和 C+编写,并使用了多种编译器进行测试,保证源代码的可移植性。 (2)支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows 等多种操作系统。 (3)为多种编程语言提供了 API。这些编程语言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby 和 Tcl 等。 (4)支持多线程,充分利用 CPU 资源。 (5)优化的 SQL 查询算法,有效地提高查询速度。 (6)既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件
12、中提供多语言支持,常见的编码如中文的 GB 2312、BIG5,日文的Shift_JIS 等都可以用作数据表名和数据列名。 (7)提供 TCP/IP、ODBC 和 JDBC 等多种数据库连接途径。 (8)提供用于管理、检查、优化数据库操作的管理工具。 (9)可以处理拥有上千万条记录的大型数据库 5。2.4.3 Easyeclipse for php 概述EasyEclipse 是一个将 Eclipse 插件分类打包,针对不同类型的使用人群,提供不同版本的包装过的 Eclipse 下载。EasyEclipse 不同于 MyEclipse,EasyEclipse 是免费的开源软件,分别提供 Win
13、dows,Mac,Linux 平台版本下载。EasyEclipse 提供三类版本,分别是 Java,web 和动态语言,C/C+ 7。easyeclipse for php 用于开发,部署,调试,测试 PHP 应用程序集成一个 Web 服务器和一个数据库。支持 CVS 与Subversion。2.5 数据库连接3PHP 可以编译成具有与许多数据库相连接的函数。PHP 与 MySQL 是现在绝佳的组合。你还可以自己编写外围的函数取间接存取数据库。通过这样的途径当你更换使用的数据库时,可以轻松的更改编码以适应这样的变化。PHPLIB 就是最常用的可以提供一般事务需要的一系列基库。 就像前面说的那样
14、,PHP 已经进入了一个高速发展的时期。对于一个非程序员来说为 PHP 扩展附加功能可能会比较难,但是对于一个 PHP 程序员来说并不困难。 PHP 提供了类和对象。基于 web 的编程工作非常需要面向对象编程能力。PHP 支持构造器、提取类等。 传统上网页的交互作用是通过 CGI 来实现的。CGI 程序的伸缩性不很理想,因为它为每一个正在运行的 CGI 程序开一个独立进程。解决方法就是将经常用来编写 CGI程序的语言的解释器编译进你的 web 服务器(比如 mod_perl,JSP)6。PHP 就可以以这种方式安装,虽然很少有人愿意这样以 CGI 方式安装它。内嵌的 PHP 可以具有更高的可
15、伸缩性。3 系统总体设计3.1 系统结构设计本系统采用 PHP 模块化设计全站设计包括首页、前台校友登录界面和后台管理登录界面。首页采用 PHP 动态调用最新加入系统的校友,最近更新信息,最受欢迎评论等。校友登录界面包括登录平台、新校友注册。后台登录提供信息发表、信息回复、学科信息共享等。后台管理员界面包括信息审核、会员管理、网站设置等。图 2 首页功能设计图用户注册页面用户可以通过输入邮箱账号、性别、昵称、密码以及重复密码信息来完成个人用户账号的成功注册。注册功能示意图如下:首 页用户登录用户注册最新留言最新注册 数 据 库最新信息后台登录邮 箱昵 称性 别数 据 库4图 3 登录功能设计图
16、用户中心采用用户在首页输入用户名密码后保存在数据库,用户登录输入用户名,密码后调用数据库中信息核对,后保存 session 跳转到用户中心。用户中心包括了用户对个人资料的修改,发布和浏览个人信息,上传个人资料到通讯录空间共享。设计图如下:否 是 否 是图 4 用户登录流程图用户中心的留言板提供用户登记三种信息,信息包括:用户名(昵称) ,留言信息的标题,以及留言的内容。留言登记流程图如下:否 是 否 是 否是密 码用户登录邮箱验证用户中心密码验证昵称验证标题验证留言发布内容验证5图 5 留言登记流程图用户中心的个人信息提交表单可以提交用户的信息包括:姓名,性别,手机号,QQ 号,所在班级。个人信息发布流程图如下:图 6 个人信息发布功能设计图后台管理采用默认用户名,密码登录,可直接方便的对数据库进行修改,用户、系统的管理。设计图如下:否是否是图 7 后台管理登录流程图3.2 数据库设计数据库用户登录账号验证管理登录密码验证姓 名手机号QQ 号所在班级数 据 库