基于PHP的数据结构课程网站建设Word文件下载.docx
- 文档编号:8160396
- 上传时间:2023-05-10
- 格式:DOCX
- 页数:41
- 大小:863.12KB
基于PHP的数据结构课程网站建设Word文件下载.docx
《基于PHP的数据结构课程网站建设Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于PHP的数据结构课程网站建设Word文件下载.docx(41页珍藏版)》请在冰点文库上搜索。
4.4作业管理25
4.5资料管理29
4.6留言管理30
4.7密码管理33
5.总结34
5.1不足34
5.2心得34
参考文献35
致谢36
摘要:
本论文主要阐述了课程管理系统从前台UI设计到页面布局再到后台各个功能的实现。
首先,对整个互联网行业进行分析,再从教学使用的作业管理入手,再讲述教学网站设计时需要注意的细节问题以及所采用的技术。
本论文主要研究说明管理系统的一系列功能:
包括班级管理、学生管理、作业管理、资料管理、留言管理。
系统页面布局上主要采用了div+css布局和javascript技术实现部分特效,开发技术为完全面向对象的PHP语言,数据库采用了目前最流行的MYSQL数据库,PHP和MYSQL的完美结合,是中小规模建设网站的首要选择。
关键词:
课程管理系统MYSQL和PHP数据库
Abstract:
ThispapermainlyelaboratesthecoursemanagementsystemfromthefrontdeskUIdesigntopagelayoutandthentherealizationofvariousfunctionsinthebackground.First,theentireInternetindustryanalysis,startteachingjobmanagement,andabouttheneedtopayattentiontothedetailsoftheteachingwebsitedesignandthetechnologyused.Inthisthesis,thedescriptionofthemanagementsystemandaseriesoffunctions:
includingclassroommanagement,studentmanagement,jobmanagement,datamanagement,messagemanagement.Systempagelayoutdiv+csslayoutandjavascripttoachievesomeofthespecialeffects,thedevelopmentoftechnologyisafullyobject-orientedPHPlanguage,databaseMYSQLdatabaseusingthemostpopular,theperfectcombinationofPHPandMYSQL,smallandmedium-sizedconstructionthefirstchoiceofthesite.
Keywords:
CoursemanagementsystemMYSQLandPHPDatabase
1.绪论
1.1背景
互联网的快速发展使信息的共享和传递变得极其的简单和快捷。
现在人们可以通过互联网轻松的进行进行社交、购物、娱乐等等,它已经是面面俱到,深入人心。
靠着设计者天马行空的想象力已经让互联网这个新生代工具变得无所不能,现在人们的生活很大程度上已经离不开了互联网。
然而高校教育也是传播知识和文明的主要途径,那么在高校教学过程中互联网又可以为我们做些什么呢?
1.2研究的目的和意义
在教学过程中布置课下作业是非常作业的环节,她会让你熟练的应用你所学的知识,并找到你的不足,那么收发作业这个功能能否通过互联网实现呢?
这将是我们本文的主要话题。
传统的作业布置和提交有地点限制和作业细节要求的限制,而且学生提问一些问题只能在课堂上;
如果通过一个作业布置提交和师生沟通留言的教学课程管理系统,那么会大大提供教学和学习的效率。
下面我们简单介绍关于教学课程管理系统的一些基本功能。
1.3课程网站功能简介
我们所设计的教学课程管理系统,运行在Apache服务器上,页面美化和框架主要由HTML语言生成,论坛的功能部分主要由PHP语言实现,同时它也负责接入MYSQL数据库实现各种数据的存取和查询,另外,论坛的一些跳转和插件用到了一些简单的javascript脚本语言。
这些语言和服务器、数据库通力合作组成了这个课程管理系统,使它能够平稳的运行。
课程管理系统的主要功能有:
学生功能:
查看下载作业信息、查看下载资料、留言和交流;
教师功能:
班级管理;
学生管理,添加修改删除查看学生信息;
作业管理,添加作业,查看作业,下载作业,审核作业;
资料管理,添加修改删除相关资料;
留言管理:
查看回复留言,删除留言。
2.系统的相关技术介绍
2.1PHP+MYSQL介绍
php是HypertextPerprocessor(超文本预处理程序)的简称,也有人成为PersonalHomePageTools.它是一种服务器端的嵌入式HTML脚本语言。
相对应的语言有ASP、JSP等,由于其功能与ASP非常相似,所以PHP被称为“源代码开放的ASP”[1]。
MySQL是一个真正的多用户、多线程SQL数据库服务器。
SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言。
MySQL是以一个客户机/服务器结构的实现,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成[2]。
SQL是一种标准化的语言,它使得存储、更新和存取信息更容易。
例如,你能用SQL语言为一个网站检索产品信息及存储顾客信息,同时MySQL也足够快和灵活以允许你存储记录文件和图像。
MySQL主要目标是快速、健壮和易用。
2.2应用div+css与HTML的结合设计网页
什么是div+css?
Div是一种框架布局,类似于<
table>
,但比<
更灵活,容易掌握。
CSS是一种样式表(stylesheet)技术。
也有的人称之为层叠样式表(CascadingStylesheet)。
它的作用简单的说:
就是可以使你在同一页面里使用不同的超链接样式。
用CSS仅仅改变一个文件就可以改变数百个网页的外观,个性化的表现而不损坏原页面显示.这些都因为网页样式表的强大和灵活特性。
CSS与HTML的结合方式:
一个外部的样式表可以通过HTML的LINK元素连接到HTML文档中:
<
LINKREL=StyleSheetHREF="
style.css"
TYPE="
text/css"
>
color-8b.css"
aural.css"
<
LINK>
标记是放置在文档的HEAD部分。
可选的TYPE属性用于指定媒体类型--text/css是一个层叠样式表--允许浏览器忽略它们不支持的样式表类型。
为CSS文件配置服务器而将text/css当作Content-type内容发送出去也是一个好注意。
外部样式表不能含有任何像<
HEAD>
或<
STYLE>
这样的HTML的标记。
样式表仅仅由样式规则或声明组成。
一个单独由P{margin:
2em}组成的文件就可以用作外部样式表了,外部样式表以.css后缀。
当样式被应用到很多的网页时,一个外部样式表是理想的。
网页制作者使用外部样式表可以改变整个网站的外观而仅仅通过改变一个文件。
同样的,大多数浏览器会保存外部样式表在缓冲区,从而如果样式表在缓冲区就避免了在展示网页时的延迟[3]。
"
教学课程管理系统"
中CSS样式表使用:
#header{
float:
left;
width:
100%;
height:
145px;
border:
0px;
background-color:
#e8faf6;
}
在这个样式表中使用了:
float:
float使区域中的内容脱离文档流,并靠左浮动;
width,height:
width,height分别定义了区域内容的宽和高,默认单位是像素,也可以用百分比,百分比时继承父区域的宽和高;
border:
border定义了所在区域的外边框,又分为外边框样式、颜色、宽度;
background-color:
background-color,background-image它们是对网页背景颜色和背景图片的设置。
2.3应用JavaScrip设计网页
JavaScript是一种基于对象(Object)和事件驱动(EventDriven)并具有安全性能的脚本语言。
使用它的目的是与HTML超文本标记语言、Java脚本语言(Java小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用,从而可以开发客户端的应用程序等。
它是通过嵌入或调入在标准的HTML语言中实现的。
它的出现弥补了HTML语言的缺陷。
JavaScript的出现使得信息和用户之间不仅只是一种显示和浏览的关系,而是实现了一种实时的、动态的、可交式的表达能力。
从而基于CGI静态的HTML页面将被可提供动态实时信息,并对客户操作进行反应的Web页面的取代。
JavaScript脚本正是满足这种需求而产生的语言。
它深受广泛用户的喜爱。
它是众多脚本语言中较为优秀的一种,与WWW的结合有效地实现了网络计算和网络计算机的蓝图。
下面是JAVASCRIPT在课程管理系统中的应用实例:
下面是作业查看中使用的js代码:
scriptlanguage="
JavaScript"
>
varonecount;
subcat=newArray();
?
php
include("
../functions/database.php"
);
get_connection();
$count=0;
$que=mysql_query("
select*fromhomework"
while($rs=mysql_fetch_array($que))
{?
subcat[<
phpecho$count;
]=newArray("
phpecho$rs['
hname'
];
"
"
classname'
<
php
$count++;
}?
onecount=<
;
functionchangelocation(locationid)
{document.myform.hname.length=1;
varlocationid=locationid;
vari;
for(i=0;
i<
onecount;
i++)
{
if(subcat[i][1]==locationid)
{
document.myform.hname.options[document.myform.hname.length]=newOption(subcat[i][0],subcat[i][2]);
}
}
/script>
这段代码结合php实现二级分类展示的效果,当你选择点击班级时。
另一个下拉列表会自动切换到改班级的作业次数列表。
3.系统构建
3.1系统构建的总体目标
课程管理系统是基于php的B/S工作模式,在windows+php+mysql+apache环境平台完成设计。
设计的目的是方便作业的提交和整合,增加老师和学生,学生和学生之间的交流沟通,营造更好的学习氛围。
从而全方位的提高教学和学习的效果。
3.2系统构建的总体目标
3.2.1Apache服务器
Apache是世界使用排名第一的Web服务器软件。
Apache也是目前最流行的Web应用服务器,占据了互联网应用服务器70%以上的份额。
Apache能取得如此成功并不足为奇:
它免费、稳定且性能卓越;
但Apache能取得如此佳绩的另一个原因是,当时互联网刚刚兴起时,Apache是第一个可用的Web应用服务器,人们没有其他的选择。
不可否认,Apache是一个优秀的全能Web服务器,但对于那些需要更强大的Web应用服务器(比如大小、可定制、响应速度、可扩展性等方面)的人而言,Apache明显不符合他们的要求,寻找Apache的替代者是更好的选择。
它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。
它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。
Apacheweb服务器软件拥有以下特性:
1.支持最新的HTTP/1.1通信协议;
2.拥有简单而强有力的基于文件的配置过程;
3.支持通用网关接口;
4.支持基于IP和基于域名的虚拟主机;
5.支持多种方式的HTTP认证;
6.集成Perl处理模块;
7.集成代理服务器模块;
8.支持实时监视服务器状态和定制服务器日志;
9.支持服务器端包含指令(SSI);
10.支持安全Socket层(SSL);
11.提供用户会话过程的跟踪;
12.支持FastCGI;
13.通过第三方模块可以支持JavaServlets。
3.2.2Mysql数据库
MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQLAB公司。
关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL的SQL语言是用于访问数据库的最常用标准化语言。
MySQL软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。
由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。
与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQLCluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。
对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
3.2.3PHP语言
PHP是英文超文本预处理语言(即HypertextPreprocessor)的缩写。
PHP是一种HTML内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,被广泛地运用。
PHP具有以下优势:
1.开放的源代码:
所有的PHP源代码事实上都可以得到;
2.PHP是免费的:
和其它技术相比,PHP本身免费且是开源代码;
3.php的快捷性:
程序开发快,运行快,技术本身学习快。
4.嵌入于HTML:
因为PHP可以被嵌入于HTML语言,它相对于其他语言,它编辑简单,实用性强,更适合初学者;
5.跨平台性强:
由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS、MacOS下;
6.效率高:
PHP消耗相当少的系统资源;
7.图像处理:
用PHP动态创建图像,PHP图像处理默认使用GD2。
不过也可以配置为使用imagemagick进行图像处理;
8.面向对象:
在php4,php5中,面向对象方面都有了很大的改进,php完全可以用来开发大型商业程序;
9.专业专注:
PHP支持脚本语言为主,同为类C语言。
3.2.4集成环境wamp的安装
1.下载最新的安装包(官方网站,SourceForge),当前版本WampServer2.0i集成了apache2.2.6、php5.2.5+PECL、SQLitemanager、MySQL5.1.36、Phpmyadmin。
2.运行安装包
a)弹出安装向导。
点击【next】进行下一步即可。
图3.1wamp安装截图
b)选择第一个接受协议。
图3.2wamp安装截图
c)选择安装路径。
图3.3wamp安装截图
d)选择是否创建快捷方式。
图3.4wamp安装截图
e)install开始安装。
图3.5wamp安装截图
安装结束后,在浏览器下输入http:
//localhost/,安装成功会显示wampserver的配置信息,至此安装结束,下面做简单的配置。
3.wamp服务器配置
a)PHP服务器启动与停止
PHP服务器包括Apache服务器和MySQL服务器,可以选择“手动启动PHP服务”或“操作系统自动启动PHP服务”两种方法启动PHP服务器。
b)PHP服务器的配置
注意:
对php配置或对apache配置后都需要重启服务器。
1).设置允许外网访问Apache服务
单击系统托盘,打开apache->
http.conf配置文件,查找关键字Denyfromall,在第一处Denyfromall下手动输入Allowfromall,保存,重启服务器即可。
2).修改Apache服务默认80端口号
使用同样的方法在http.conf配置文件中找到Listen80,将80修改为别的端口号,例如8080。
保存配置文件。
3).设置起始页
使用同样的方法在http.conf配置文件中找到DirectoryIndex,看到后面依次是index.phpindex.php3index.htmlindex.htm,从左向右优先级依次降低如果想要设置新的默认起始页,可以再空两格添加新的文件名称:
如login.php。
4).设置Apache服务器主目录
5).设置虚拟目录
6).PHP时区设置
7).PHP预处理器其它常用配置
php.ini是php的初始化配置文件,所在目录是C:
\wamp\bin\php\php5.3.0。
下面介绍几个常用的配置选项。
short_open_tar=On:
表示允许使用’<
’和’?
’作为php语句的开始结束标记。
output_buffering=On:
表示允许使用页面缓存。
display_errors=On:
表示打开错误提示,在调试程序时经常使用。
8).为MySQL数据库服务器root账户设置密码
在phpmyadmin下改完密码后,还有修改phpmyadmin的配置文件,保证密码修改成功。
打开”C:
\wamp\apps\phpmyadmin3.2.0.1”目录,找到config.inc.php。
user=root,password=’’;
默认密码为空,现在将password设为刚才修改的密码,重新进入phpmyadmin即可。
9).使用phpmyadmin对数据库进行操作。
输入http:
//localhost/phpmyadmin,在页面下可以对数据库进行创建添加删除查询等操作。
在对服务器配置完后,点击重启服务即可。
3.4数据库设计
对于一个完善的管理系统,数据库的支持是离不开的,管理数据库也需要方便的管理软件,我使用的是phpmyadmin软件,它也是基于php制作的,不需要客户端,方便快捷。
把他放在网站根目录下输入http:
//localhost/phpmyadmin/便可进行管理。
首先是创建数据库,数据库的编码我选用的是国内流行的gbk编码,创建名为course的数据库。
结构如下:
3.6course数据库截图
在course下我们需要8个数据表,下面分别列出数据表的结构。
3.4.1管理员数据表:
3.7管理员表库截图
由于本系统只设置了一个管理员,并没有设计到管理员的注册功能。
在admin_user表中,aid是主键,name,password分别是管理员名和密码。
4.2班级数据表:
3.8班级表class截图
在class表中,classid是主键,自增,classname是班级名,设计的是班级名是不能重复的,也就是classid和classname是一一对应的。
Num是班级的人数,默认是0人,当管理员添加一个时,班级人数num会增加1。
3.4.3学生数据表:
3.9用户表user截图
user表有八个字段,sid学号,是主键,并没有设为自增,而是在程序中设计成自增;
username学生姓名,可以重复,password学生登录密码,默认为0;
sex学生性别,tel电话,email学生邮箱,这三个字段默认为空;
classname学生所在的班级名称,与class表中的classname是对应的;
times是这个学生作业的总共提交次数,拥有同级学生交了几次作业。
3.4.4资料数据表:
3.10资料表file截图
file表中,fid是主键,长度是5,做大容纳99999个文件;
filename文件名;
file上传文件本身的文件名,date长传日期;
classname文件的班级,上传文件时需要选择班级。
3.4.5作业发布数据表:
3.11作业发布表homework截图
作业发布是系统的重要环节,homework表也是连接班级,学生,作业的桥梁,很重要:
hid作业发布的作业号,主键,唯一,自增;
hname作业名字,在程序设计中命名为第1次作业、第2次作业……;
content作业要求,是text类型;
classname作业对于的班级名;
time作业提交的截止时间;
date作业发布时间;
在这个表中,hname和classname能确定一个hid。
3.4.6作业内容数据表:
3.12主要内容表hwcontent截图
hwcontent表也是数据库中重要的表,他有5个字段:
fileid作业文件号,主键唯一;
sid提交作业用户的学号,学号是唯一的,可以确定用户的所以信息;
file提交作业的文件名;
hid提交作业的作业次数,sid和hid能唯一确定一个fileid:
某个学生的第几次作业;
pass:
作业的通过情况,默认是通过情况通过,如果不合格,老师会在后台上操作使pass值变为0,即不通过。
3.4.7留言板主题数据表:
3.13留言主题表subject截图
留言板是为了加强师生间,学生间的交流互动。
subject表是留言的主题标题表:
tid:
标题号主键唯一,title标题内容;
auth:
创建留言作者;
date主题创建日期时间。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 PHP 数据结构 课程 网站 建设