1、目 录基于 PHP 的信息发布平台的设计与制作 .1摘 要: 1关键词: 1Design and manufacture of information publishing platform based on PHP 1Abstract: .1Key words: .10 前言 .21 开发工具及相关技术概述 21.1 调试及运行工具 .21.2 相关技术 .22 系统需求分析 .62.1 系统开发背景 62.2 系统定义 72.3 功能需求分析 73 系统概要设计 .73.1 系统功能划分组织结构图 73.2 数据库设计 84 系统的详细设计与实现 .94.1 系统组成及运作流程 94.2
2、系统主页 104.3 管理操作页面 134.4 社团独立主页 195 结论 .23参考文献 .24xx 大学物理与电子学院本科毕业论文1基于 PHP 的信息发布平台的设计与制作xx(xx 大学物理与电子学院,xx xx,xxxx)摘 要: 互联网时代各种信息浩如烟海,以一己之力往往不可能快速、高效地分辨、筛选出于我们有用的信息。因而,经由各种专门的信息发布平台发布相对专一的信息就显得十分必要。本文以我校目前处于分散发布的学生社团信息为例,以动态网页为依托,建立一个学生社团信息集中发布平台,以实现分散信息的集中化、专门化发布。本系统利用 XAMPP集成软件包,采用 PHP+Apache+MySQ
3、L 的模式进行开发,由 Apache 服务器提供开发环境,前端页面由 PHP 嵌入 HTML 进行设计和制作,后台采用 MySQL 数据库进行数据的管理和开发,实现了逻辑清晰的布局和管理。关键词: PHP 技术 Apache 服务器 MySQL 数据库 动态网页Design and manufacture of information publishing platform based on PHP xxxx(School of Physics and Electronics, xxx University, xxxx xxxx China)Abstract: Internet era eac
4、h kind of information is voluminous, to single handedly is often not possible to quickly and efficiently identify, screening for us useful information. Therefore, through a variety of specialized information publishing platform released relatively single-minded information is very necessary.This pap
5、er to our school is currently in the dispersed student community information, for example, on dynamic web page as the basis, establish a student information concentrated release platform, in order to realize the centralization of the dispersed information, special publication.The system using xampp
6、integrated software package, the use of PHP + Apache + MySQL development model, development environment provided by the Apache server, the front page by PHP embedding HTML was designed and fabricated, the background of the MySQL database data management and development, realize the logical layout an
7、d management.Key words: PHP Technology Apache server MySQL database The dynamic web pagexx 大学物理与电子学院本科毕业论文20 前言信息,作为 21 世纪最为宝贵的资源之一已经在各个方面深刻影响了人类的生活方式。伴随信息时代日新月异的高速发展,网络正在逐步地与人们日常生活的方方面面深度融合。人们每天都会从网上获取大量信息,大到医疗、财经,小到天气、出行。此外,人们还无时无刻不利用手机、平板、电脑等各式各样的互联网终端设备通过查阅学习资料,浏览新闻热点等方式从网上获取信息。这其中,五彩缤纷的网页信息占据了主
8、体部分。但随着 Internet 的不断发展,静态 Web 站点的开发与维护已经越来越无法满足现状的需要。一方面,信息的快速增多和迅速变化让站点的维护变得越来越困难;另一方面,与用户缺乏有效交互的静态网站也令用户失去多次访问的兴趣。因此,动态网站的开发已渐成趋势。1 开发工具及相关技术概述1.1 调试及运行工具本系统采用 XAMPP 集成软件包为网站搭建调试及运行的环境。XAMPP 软件包集成了包括服务器、数据库等在内的多个网站调试及运行时所必须的功能组件,省去了我们分别安装各个软件的不易,极大提高了开发效率。它操作起来十分简便:从官网上下载后直接解压、启动便可运行。这款软件最初的名字是 LA
9、MPP,最新的版本中改为了 XAMPP 以防混淆。XAMPP是一个合成词,其中各个字母分别代表了软件包中所集成的一种网络服务服务:A 代表了 Apache 服务器,M 代表了 MySQL 数据库,P 代表 PHP 技术,P 表示 Perl。而在本系统的开发过程中用到的是 Apache+MySQL+PHP。1.2 相关技术1.2.1 PHP 的工作原理及相关技术PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器” )作为一种通用开源脚本语言能与同样开源的 Apache 和 MySQL 产品良好结合进而共同完成网站的开发与运用,并且 PHP 效率相比较
10、而言较高。 1其应用十分广泛,特别是在网络程序开发方面。PHP 代码在服务器上运行生成网页供浏览器读取,从而减轻了客户端的负担,同时提高了系统整体升级维护的效率,降低了维护成本。PHP 可以在许多的不同种的服务器、操作系统、平台上运行,也可以和许多数据库系统结合。使用 PHP 不需要任何费用,官方组织 PHP xx 大学物理与电子学院本科毕业论文3Group 提供了完整的程序源代码,允许用户修改、编译、扩充来使用。PHP 的设计理念及特点: (1)多进程模型。(2)弱类型语言:变量类型可能会在运行过程中发生改变,从而使开发过程变得便捷、高效。(3)引擎(Zend)+组件(ext)的模式降低内部
11、耦合。(4)中间层(sapi)隔绝 web server 和 PHP。(5)语法简单灵活,没有太多规范。缺点导致风格混杂,但再差的程序员也不会写出太离谱危害全局的程序。其工作原理如图 1.2-1 所示:图 1.2-1:PHP 工作原理示意图1.2.2 数据库技术通俗地讲,数据库就是一个存放数据的仓库,只不过数据在这个仓库中是按一定的数据结构来进行组织、存储和管理的。严格地讲,数据库又与单纯存放数据的仓库不同。数据库是安全一定原则处理过的数据的集合,是长期存储在计算机内的、有组织的、可共享的大量数据的集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展
12、性,并可为各种用户共享,其具有永久存储、有组织和可共享三个基本特点。2SQL 即结构化查询语言的英文简称,其全称为 Structured Query Language,是关系数据库的标准语言。SQL 是专为数据库而建立的操作命令集,是一个通xx 大学物理与电子学院本科毕业论文4用的、功能极强的关系数据库语言。 2其具有综合统一、高度非过程化、操作方式面向集合、以同一种语法结构提供多种使用方式、语言简洁,易学易用的特点。 2MySQL 是一种关系型数据库管理系统,它的一个优势是开放源代码,这使得它被广泛应用。此外,MySQL 数据库系统使用被广泛应用的数据库管理语言-结构化查询语言( SQL)进
13、行数据库管理。 3其具有支持多线程、支持多种存储引擎、快速、多用户等特点。它支持标准 SQL 查询语言和多种数据类型,能对数据进行各种类型的查询等。MySQL 提供了一整套的数据库创建和访问机制,让用户能够通过很直观的方式创建、访问、修改数据库的表和项,并且建立它们之间的各种数据关系。MySOL 数据库的优点之一是由其生成的文件简小轻便,使用时可以不启动或运行数据库进程,通常 MySQL 数据库文件可以和网页文件一起方便地保存在网站的目录中。此外,同时访问数据库的用户数量不受限制,用户权限设置简单、有效。而且,MySQL 还是目前市场上现有产品中运行速度最快的数据库系统。正是由于这些特点,My
14、SQL 数据库通常被用来作为网站开发的数据库支持技术。对 MySQL 数据库的管理采用图形化管理工具 phpMyAdmin 。phpMyAdmin 是一个以 PHP 为技术支持的数据库管理工具。借由phpMyAdmin 用户可通过网页窗口便捷地管理后台数据库。对于 SQL 语句的繁多复杂,此窗口提供了一个简易高效的输入途径,使得大量数据的输入输出等操作更为简洁高效。此外,同 PHP 程序一样 phpMyAdmin 的执行也是在网页服务器上进行的,这给开发人员提供了很大的便利使其可以远端控制 MySQL 数据库等。1.2.3 Apache 服务器Apache HTTP 服务器是一个优秀模块化的服
15、务器产品。它来源于NCSAhttpd 服务器,因为开源的特点,经过多次修改,集合了众多人的智慧,成为世界使用排名第一的 Web 服务器软件。它不受操作系统限制,几乎可以广泛地运行于所有计算机平台上。Apache 服务器拥有以下特性:(1)支持基于 IP 和基于域名的虚拟主机;xx 大学物理与电子学院本科毕业论文5(2)集成 Perl 处理模块;(3)支持服务器端包含指令(SSI);(4)支持实时监视服务器状态和定制服务器日志;(5)支持通用网关接口;(6)集成代理服务器模块;(7)支持多种方式的 HTTP 认证;(8)支持最新的 HTTP/1.1 通信协议拥有简单而强有力的基于文件的配置过程;
16、(9)提供用户会话过程的跟踪;(10)通过第三方模块可以支持 Java Servlets。(11)支持 FastCGI;(12)支持安全 Socket 层(SSL)。1.2.4 HTML 概述HTML 是网页制作中必不可少的一种文本标记语言,主要用于构成网页文档。HTML(HyperText Mark-up Language)即超文本标记语言或超文本链接标示语言,是网络上最广为人们使用并认可的文本标记语言。它的作用在于使互联网上不同主机之间的文本或图像联接成一个统一的有机整体,使得网页的开发变得高效、简捷。HTML 是组合成一个文本文件的一系列标签。 4其标签通常是英文词汇的全称或缩略语。但与
17、一般文本的区别之处在于它们都是放在单书名号里的。此外,值得注意的一点是:标签都是成对出现的。1.2.5 CSS 简介CSS 是英语 Cascading Style Sheets(层叠样式表单)的缩写,它是一种用来表现 HTML 或 XML 等文件样式的计算机语言。 5CSS 是一种计算机网页样式设计语言,其一大特点是将网页表现与内容实现了真正的分离。相对于传统 HTML 的表现而言,CSS 能够对网页中的对象的位置排版进行像素级的精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力,并能够进行初步交互设计,是目前基于文本展示最优秀的表现设计语言。 6xx 大学物理与电子学院
18、本科毕业论文61.2.6 B/S 模式B/S 结构(Browser/Server,浏览器/服务器模式) ,是一种高效的网络结构模式。这种模式一定程度上解放了客户端,它将实现系统功能的主要部分集中到服务器上,使得对系统的开发、使用、维护和升级变成了对服务器进行相关的操作,从而降低了维护成本,提高了开发效率。B/S 结构一方面使客户机的工作得以简化使其只需配置少量客户端软件即可,而另一方面访问数据库和执行应用程序的任务都将由服务器来完成,这在一定程度上加重了服务器的工作负担。其优势所在有: (1)分布性强,查询、浏览等业务处理不受时间、地域限制。(2)业务扩展简单方便,通过增加网页即可增加服务器功
19、能。(3)系统维护、升级简单高效,改变网页即可使所有用户同步更新。 7 (4)开发简单,共享性强此外,相对于原来 C/S 体系的二层结构,B/S 体系拥有三层体系结构。其中多出来的一层是由原客户端中分离出来的由服务器独立组成的事务处理逻辑模块。这种三层体系结构如图 1.2-2 所示:客 户 机 1客 户 机 3客 户 机 2互 联 网W E B 服 务 器数 据 库 服 务 器图 1.2-2:B/S 三层体系结构2 系统需求分析2.1 系统开发背景简单来说,当前信息量的爆炸性增长和个人精力的有限之间的矛盾是信息发布平台开发的基本动力。当今社会,网络已经进军各行各业,人们生活的方方面面都跟网络产
20、生了紧密的联系。而信息作为网络世界的重要载体业已成为当今时代最为宝贵的资源之一。互联网上每时每刻都会产生数目惊人的海量信xx 大学物理与电子学院本科毕业论文7息,而面对那些未经归类整理的形形色色的海量信息普通人是无法从中获取有价值的信息的。而这无疑既会影响到人们的日常工作、学习、生活,又是对信息所蕴藏价值的一种极大浪费。因而,我们需要一个信息搜集、归类整理以及发布的专门平台,在这个平台上集中了人们所关注的某一个方面的信息并以实时更新的方式通过让人一目了然的方式对外发布。本文所描述的系统以我校学生社团为研究对象进行开发。目前,我校各式学生社团共有一百多个,这些社团都会组织一些和自己社团宗旨相符合
21、的课余活动,而这些活动的相关信息目前都是由各个社团自己的微博、微信等公共号进行发布的。这就导致没有参加某个社团的同学无法或者很难了解到该社团的有关活动信息。因此,建立一个面向全体学生的统一的社团信息发布平台,集中、整合、管理并实时发布社团活动信息就显得有所必要。2.2 系统定义本系统有两类主要用户,一类是全体学生,一类是各式学生社团。系统设置一个主页,各社团最新动态在主页面上分区显示,每个区域内都可以通过链接转向该社团的社团主页。每个社团自己的主业可以根据社团要求另行设计。对于普通学生个人用户只需通过浏览网页来获取自己所需信息即可;而对于社团用户,通过申请由管理员对其进行注册并向其发放已经注册
22、成功地社团 ID,社团用户凭此 ID 号可登录信息上传界面上传其活动信息。2.3 功能需求分析本系统一共有三类用户:普通学生、学生社团和管理员。对于普通学生,只要通过域名就可以访问平台浏览各个社团发布的活动信息。对于社团用户,经管理员注册成功后具有登录该社团信息上传页面的权限,可以上传其相关活动的信息。而对于管理员,其具有访问后台数据库的权限。他负责新加入社团用户的注册,同时负责后台数据的增加、删除、修改等管理任务。此外,他还负责根据有关社团的要求管理网站代码,为其定制个性化的社团独立页面。对于后台数据库,则要设置注册信息表用以保存各个社团的注册信息并在社团用户每次登录时对其身份进行认证;设置
23、管理员信息表用以保存管理员信息并对其登录情况进行记录;设置各个社团活动信息表用以对各社团所上传的活动信息加以保存。xx 大学物理与电子学院本科毕业论文83 系统概要设计3.1 系统功能划分组织结构图根据以上对系统功能需求的分析,可得到系统功能划分组织结构图如图3.1-1 所示:图 3.1-1:系统功能划分组织结构图3.2 数据库设计在社团活动信息发布平台的后台数据库中有注册信息表一个,其结构如下表 3.2-1 所示、管理员信息表一个,其结构如下表 3.2-2 所示、社团活动详细信息表若干,其结构如下表 3.2-3 所示。表 3.2-1:注册信息表字段 类型Userid Int(3)Userna
24、me TextUserpassword TextUsertel Bigint(11)xx 大学物理与电子学院本科毕业论文9Useremail TextUseraddress TextRegistime Datetime表 3.2-2:管理员信息表字段 类型managerid Int(4)password textlogintime datetime表 3.2-3:社团活动信息表字段 类型Userid Int(11)Actitle TextAcinfo TextUptime Datetime4 系统的详细设计与实现4.1 系统组成及运作流程本系统包括一个主页面用于显示各个社团的最新动态,一个社团
25、用户登录界面,一个详细信息上传界面用于社团用户上传其活动相关信息以及若干的社团独立页面用于展示与该社团相关的其他详细信息。系统的运作流程是:首先由社团用户向管理员申请获得一个社团 ID 后,该社团便可登录系统并上传最新的社团动态。而普通学生用户则是直接通过网页获取自己感兴趣的信息即可,无需登录。xx 大学物理与电子学院本科毕业论文10管理员和社团用户均可对后台数据库进行相应的操作,则实现前端与后台数据库连接的代码如下:4.2 系统主页系统暂设有 4 个学生社团用户,其社团最新动态信息在前端主页的显示效果如下图 4.2-1 所示,其后台数据库存储如下图 4.2-2 所示:xx 大学物理与电子学院
26、本科毕业论文11图 4.2-1:系统主页图 4.2-1:已注册社团在数据库中的存储图 4.2-1 中时钟为动态翻页时钟,其实现代码如下:var h_current = -1;var m1_current = -1;var m2_current = -1;var s1_current = -1;var s2_current= -1;function flip (upperId, lowerId, changeNumber, pathUpper, pathLower)var upperBackId = upperId+“Back“;$(upperId).src = $(upperBackId).s
27、rc;$(upperId).setStyle(“height“, “64px“);$(upperId).setStyle(“visibility“, “visible“);$(upperBackId).src = pathUpper+parseInt(changeNumber)+“.png“;$(lowerId).src = pathLower+parseInt(changeNumber)+“.png“;xx 大学物理与电子学院本科毕业论文12$(lowerId).setStyle(“height“, “0px“);$(lowerId).setStyle(“visibility“, “visi
28、ble“);var flipUpper = new Fx.Tween(upperId, duration: 200, transition: Fx.Transitions.Sine.easeInOut);flipUpper.addEvents(complete: function()var flipLower = new Fx.Tween(lowerId, duration: 200, transition: Fx.Transitions.Sine.easeInOut);flipLower.addEvents(complete: function()lowerBackId = lowerId+
29、“Back“;$(lowerBackId).src = $(lowerId).src;$(lowerId).setStyle(“visibility“, “hidden“);$(upperId).setStyle(“visibility“, “hidden“); );flipLower.start(height, 64););flipUpper.start(height, 0);/flipfunction retroClock()/ get new timenow = new Date();h = now.getHours();m1 = now.getMinutes() / 10;m2 = n
30、ow.getMinutes() % 10;s1 = now.getSeconds() / 10;s2 = now.getSeconds() % 10;if(h 返回 重试);else/管理员登录$sql =“selectmanagerid,passwordfrommanageinforwhere managerid=$userid and password=$password limit 1“;$check_query = mysqli_query($conn,$sql);$result2 = mysqli_fetch_array($check_query);if($result10 = $r
31、esult20 and $result11 = $result21)/登录成功 session_start();/传递参数$_SESSIONmanagerid = $userid;/ $_SESSIONuserid = $resultuserid;header(“Location: /mass_insert.php“);else exit(登录失败!点击此处 返回 重试); ?管理员注册新用户页面如下图 4.3-2 所示:xx 大学物理与电子学院本科毕业论文16图 4.3-2:新用户注册页面新社团用户注册实现代码如下:4.3.2 社团用户操作页面社团用户具有登录和上传最新社团动态的权限。其登录
32、页面与管理员公用如上图 4.3-1 所示。其信息上传页面如下图 4.3-3 所示:图 4.3-3:信息上传页面其实现代码如下:4.4 社团独立主页社团最新动态显示在主页上,此外通过主页上各社团显示区域右下角的“READ MORE”按钮可以跳转至相应的社团独立主页。社团独立主页上显示更多该社团的相关信息。以“热风”社团为例,其独立主页如下图 4.4-1 所示:xx 大学物理与电子学院本科毕业论文21图 4.4-1:“热风”主页xx 大学物理与电子学院本科毕业论文22其后台数据库如下图 4.4-2 所示:图 4.4-2:“热风”主页后台数据库其实现代码如下:(1)从后台数据库读取已上传的信息:(2
33、)在主页上显示读到的内容:热风主页风起,万物生!HomeAboutContact“;echo“;echo $row_m1“actitle“;echo“;xx 大学物理与电子学院本科毕业论文24echo“;/picPreviewecho“;echo $row_m1“acinfo“;echo“;echo“;echo $row_m1“uptime“;echo“;echo“;$offset+;if($i“;?Copyright 5 结论随着网络的不断深入发展,无论对各人、企业还是社会,信息作为宝贵的资源正在变得越来越重要。然而,互联网上每天产生的信息不可计数,而各种纷繁复杂的信息唯有加以区别、归类其价
34、值才能更好地体现出来。本系统通过将原来各学生社团分别通过自己的微博、微信分散发布信息的方式变为在统一的平台上进行发布,提高了同学们更加全面了解各个社团动态的效率,也使得信息的传播更加高效。此外,如果将学校管理学生社团事务的xx 大学物理与电子学院本科毕业论文25有关部门的相关职能也整合到本系统中,则将进一步提高管理效率,降低管理成本。参考文献1 Larry Ullman 著,贾菡、刘彦博译.PHP 基础教程 (第 4 版). 北京:人民邮电出版社,2011-10:32-332 王珊、萨师煊. 数据库系统概论 (第 4 版). 北京:高等教育出版社, 2006-5:78-803 王雨竹、高飞. MySQL 入门经典. 北京:机械工业出版社, 2013-4:254 温谦.HTML+CSS 网页设计与布局从入门到精通. 北京:人民邮电出版社,2008:195 赵晓丽. 基于 ajax 的 ria 技术的研究及应用 . 2007 年6 孔靓、贾美娟. 网页制作中的 CSS 样式表.2012 年7 黄天戍 刘洋.一种嵌入式 WEB 服务器的设计与实现. 2004 年