毕业设计(论文)_毕业论文毕业设计

其他范文 时间:2020-02-27 16:38:49 收藏本文下载本文
【www.daodoc.com - 其他范文】

毕业设计(论文)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“毕业论文毕业设计”。

[在此处键入]

日照职业技术学院毕业设计(论文)

php许愿墙系统

学生姓名

院 部电子信息科学与工程学院 专 业计算机应用技术 指导老师

日 期 2015-05-19

目录

一 许愿墙简介..........................................................................................................................................4 二 许愿墙设计原理..................................................................................................................................4 三 四 五 PHP技术介绍...................................................................................................................................4 PHP技术优点...................................................................................................................................4 MYSQL介绍......................................................................................................................................6

六 许愿墙系统的概要设计......................................................................................................................6(一)系统开发环境...............................................................................................................................6(二)php语言选择...............................................................................................................................6(三)系统功能.......................................................................................................................................7 七 许愿墙详细设计..................................................................................................................................7(一)数据库设计...................................................................................................................................7(二)许愿墙数据库连接 写入和保存..................................................................................................8(三)许愿墙文件夹中文件的介绍.....................................................................................................13(四)许愿墙首页设计.........................................................................................................................13 八 许愿墙特色和不足............................................................................................................................15

第1页

许愿墙系统

摘要:随着Internet的发展,网站的作用越来越重要,被称之为继广播、报纸、杂志、电视后的第五种媒体——数字媒体,拥有众多优势,所以现在不少企业都有或正在建设自己的网站。而许愿墙作为网站重要的一个部分,从来就是一个大家交流的平台!许愿墙是一种最为简单的BBS应用,借助许愿墙,浏览者可以张贴留言的方式给站长、版主或其他浏览者进行留言和提问。

本文主要介绍许愿墙系统的设计思路和制作过程,从许愿墙的重要性开始,介绍我的留言版采用的PHP技术和MYSQL数据库,进而阐述整个许愿墙系统的制作过程和具体的设计思路。该许愿墙较全面地利用PHP技术实现许愿墙的基本功能:留言、回复、删除,并增加了一些特色功能。最后介绍自己在设计过程的心得体会。

关键词:许愿墙,PHP,MYSOL数据库

第2页

引言

Internet起源于20世纪60年代末、70年代初,当时,美国国防部为了将充斥于军事基地内各种厂商的电脑主机互连,让它们可以进行数据交换以便研究工作顺利进行,于是成立了ARPA网络计划。ARPA计划尝试建设1个网络系统,它可将各种不同厂商的电脑连接起来。随着这个计划的成功,各学术单位,研究机构也纷纷与ARPA计划所建立的ARPANet连接。到了20世纪80年代,Internet这个名词因势产生,它代表着这10年来所构建涵盖全球各地的网络系统。从1990年起,商业使用的Internet在美国急速地扩大,而Internet也从原来属于少数人使用的网络系统转变为普通百姓也能够使用的网络系统。

最初的Internet资源服务都还停留在文本模式,1989年,量子物理实验室(CERN)下的1个研究小组着手开发1种全新的Internet服务,它可以在网络上传送图片、文本、影像、声音等多媒体数据。于是由Tim Berners Lee领导的小组开发出了1种主从、分布式的网络服务系统,这就是www.daodoc.compile编译或链接程序,可在服务器端直接执行,这无疑是更加方便了我们的编写过程。

2、使用编程环境方便简单。可以使用普通的记事本之类的文本编辑器,即可进行编辑设计,如:Windows的记事本、FrontPage等文本编辑器。也可以用dreamweaver和专业的Microsoft Visual InterDev开发工具。

3、浏览网页方便,交互速度也快。PHP是运行在服务器端,所以我们无须担心浏览器是否支持PHP所使用的编程语言,用户端只要使用可执行HTML码的浏览器,即可浏览Personal home pages所设计的网页内容。PHP在服务器端运行,当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。

4、提供多种编程语言。PHP能与任何ActiveX scripting语言相容。除了可用VBScript或JScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言,譬如Perl等。

5、提高代码的安全性。Personal home pages的程序代码隐藏,已编码的脚本在运行时由脚本引擎解码,因此不需要单独的应用程序。客户端上仅可以看到由PHP输出的动态HTML文件。因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。

6、功能强大。编程是面向对象的(Object oriented),并可扩展ActiveX Server组件功能。Personal home page Components(ActiveX服务器组件)具有无限可扩充性。你可以使用任何编程语言来编写你所需要的Personal Server 组件。可以使用Visual Basic、Java、Visual C++、COBOL等编程语言来编写你所需要的Personal Server Component。也可以使用第三方组件或自己开发的Personal Server组件。理论上说,可以实现任何功能。

7、访问数据库十分方便。可以通过PDO(Personal Data Objects,微软的一种新的数据访问模型,是一种可以提供WEB页面开发者轻松存取Internet的数据库,并可以在用户端实现网上立即、即时更新显示的最新WEB页面数据库技术。)非常方便地访问数据库。总之,PHP从字面上说,包含三方面含义:

1.Personal:PHP使用了微软的Personal技术。Personal(COM)技术是现在Microsoft软件的重要基础。它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作。PHP本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件。只要你可以在服务器上安装这些组件,通过访问组件,你就可以快速、简易地建立自己的WEB应用。2.home:PHP运行在服务器端。这样就不必担心浏览器是否支持PHP所使用的编程语言。PHP的编程语言可以是VBSCRIPT和JSCRIPT。VBSCRIPT是VB的一个简集,会VB的人可以很方便的快速上手。然而NETscape浏览器不支持客户端的VBSCRIPT,所以最好不要在客户端使用VBSCRIPT。而在服务器端,则无需考虑浏览器的支持问题。NETscape浏览器也可以正常显示PHP页面。

3.page:PHP返回标准的HTML页面,可以正常地在常用的浏览器中显示。浏览者查看页面源文件时,看到的是PHP生成的HTML代码,而不是PHP程序代码。这样就可以防止别人抄袭程序。由此可以看出,PHP是在IIS下开发WEB应用的一种简单、方便的编程工具。在了解了VBSCRIPT的基本语法后,只需要清楚各个组件的用途、属性、方法,就可以轻松编写出自己的PHP系统。而我这次所开发的留言本系统,主要是利用PHP技术的简单和实用的特点,以及PHP使用的广泛性,而且非常适合于网络中小型系统开发。

第5页

五 MYSQL介绍

MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008 年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购.对于Mysql的前途,没有任何人抱乐观的态度.目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

1.使用C和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.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名

7.提供TCP/IP、ODBC和JDBC等多种数据库连接途径 8.提供用于管理、检查、优化数据库操作的管理工具 9.可以处理拥有上千万条记录的大型数据库

六 许愿墙系统的概要设计

(一)系统开发环境

基于微软平台PHP环境,使用MYSQL数据库。适用于IE4.0以上版本浏览器,Win2000+APACHE 或winxp+APACHE以上运行环境。(本人用的winxp+APACHE测试)。

(二)php语言选择

选择一个好的编程语言十分的重要,当前,面对众多的编程语言,很多人无从选择,而本人看到PHP的以上众多特点,个人认为:

MYSQL后台数据库+PHP服务器端程序+客户端IE浏览器,是一个精练实用高效的组合模式。在这种使用模式中,PHP程序无疑是最重要的,是沟通客户端和后台数据库之间的桥梁。在PHP程序中,通过数据库语言,建立对MYSQL数据库的连接,是客户能够访问后台数据库的前提。

鉴于前面介绍PHP优点的原因,又有上面组合的优势,本人的许愿墙使用PHP语言也是十分正确而实用的。

第6页

(三)系统功能

该许愿墙具有的主要功能如下:

1.可以按照发言时间的先后顺序,许愿墙自动排序; 2.许愿墙的主要栏目组成图

3.本许愿墙不需注册,陌生人即可留言。

七 许愿墙详细设计

有了技术和流程图以及许愿墙要实现的功能,接下来就应该进行详细设计了。数据库是首当其冲的,接下来就是用户常接触的首页的设计,然后就是该许愿墙特色功能的设计和实现。

(一)数据库设计

我的数据库采用的是MY SQL数据库,采用的原因也已经介绍了。以下就介绍许愿墙数据库的组成。

第7页

(二)许愿墙数据库连接 写入和保存

exit();} mysql_select_db(“gbook”, $con);mysql_query(“set names 'gb2312'”);date_default_timezone_set(PRC);?>

$seSavePath = LOVE_ROOT.“data/seions/”;if(is_writeable($seSavePath)&&is_readable($seSavePath)){ seion_save_path($seSavePath);} date_default_timezone_set(Singapore);$timestamp = time();require_once LOVE_ROOT.'./data/config.inc.php';require_once LOVE_ROOT.'./data/db.inc.php';require_once LOVE_ROOT.'./include/db_mysql.cla.php';require_once LOVE_ROOT.'./include/template.cla.php';if(defined('UC_KG')){include_once TM_ROOT.'/uc_client/client.php';} $PHP_SELF = $_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME'];

第8页

$SCRIPT_FILENAME = str_replace('', '/',($_SERVER['PATH_TRANSLATED'] $_SERVER['PATH_TRANSLATED'] : $_SERVER['SCRIPT_FILENAME']));//$homeurl = 'http://'.$_SERVER['HTTP_HOST'].preg_replace(“//+(api|archiver|wap)?/*$/i”, substr($PHP_SELF, 0, strrpos($PHP_SELF, '/'))).'/';

? '', //实例化数据库操作 $db = new dbstuff;$db->connect($dbhost, $dbuser, $dbpw, $dbname, $pconnect);unset($dbhost, $dbuser, $dbpw, $dbname, $pconnect);$db->query(“set names gbk”);if(getenv('HTTP_CLIENT_IP')&&strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')){ $onlineip = getenv('HTTP_CLIENT_IP');} elseif(getenv('HTTP_X_FORWARDED_FOR')&&strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')){ $onlineip = getenv('HTTP_X_FORWARDED_FOR');} elseif(getenv('REMOTE_ADDR')&&strcasecmp(getenv('REMOTE_ADDR'), 'unknown')){ $onlineip = getenv('REMOTE_ADDR');} elseif(iet($_SERVER['REMOTE_ADDR'])&& $_SERVER['REMOTE_ADDR'] &&strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')){ $onlineip = $_SERVER['REMOTE_ADDR'];}

preg_match(“/[d.]{7,15}/”, $onlineip, $onlineipmatches);$onlineip = $onlineipmatches[0] ? $onlineipmatches[0] : 'unknown';unset($onlineipmatches);?>

var $dbhost;var $dbuser;var $dbpw;var $dbcharset;var $pconnect;var $tablepre;var $time;

var $goneaway = 5;

function connect($dbhost, $dbuser, $dbpw, $dbname = '', $dbcharset = '', $pconnect = 0, $tablepre='', $time = 0){

$this->dbhost = $dbhost;

第9页

$this->dbuser = $dbuser;

$this->dbpw = $dbpw;

$this->dbname = $dbname;

$this->dbcharset = $dbcharset;

$this->pconnect = $pconnect;

$this->tablepre = $tablepre;

$this->time = $time;

if($pconnect){

if(!$this->link = mysql_pconnect($dbhost, $dbuser, $dbpw)){

$this->halt('Can not connect to MySQL server');

}

} else {

if(!$this->link = mysql_connect($dbhost, $dbuser, $dbpw)){

$this->halt('Can not connect to MySQL server');

}

}

if($this->version()> '4.1'){

if($dbcharset){

mysql_query(“SET character_set_connection=”.$dbcharset.“, character_set_results=”.$dbcharset.“, character_set_client=binary”, $this->link);

}

if($this->version()> '5.0.1'){

mysql_query(“SET sql_mode=''”, $this->link);

}

}

if($dbname){

mysql_select_db($dbname, $this->link);

}

}

function fetch_array($query, $result_type = MYSQL_ASSOC){

return mysql_fetch_array($query, $result_type);}

function result_first($sql){

$query = $this->query($sql);

return $this->result($query, 0);}

第10页

function fetch_first($sql){

$query = $this->query($sql);

return $this->fetch_array($query);} function fetch_row($query){

$query = mysql_fetch_row($query);

return $query;} function fetch_fields($query){

return mysql_fetch_field($query);} function fetch_rows($sql){

$result = $this->query($sql);

$arr = array();

while($row = $this->fetch_array($result))

{

$arr[] = $row;

}

$this->free_result($result);

return $arr;} function fetch_one($sql){

$rs = $this->query($sql);

$arr = $this->fetch_array($rs,MYSQL_NUM);

$this->free_result($rs);

return $arr[0];} function fetch_all($sql, $id = ''){

$arr = array();

$query = $this->query($sql);

while($data = $this->fetch_array($query)){

$id ? $arr[$data[$id]] = $data : $arr[] = $data;

}

return $arr;}

function cache_gc(){

$this->query(“DELETE FROM {$this->tablepre}sqlcaches WHERE expirytime”);}

function query($sql, $type = '', $cachetime = FALSE){ $func = $type == 'UNBUFFERED' && @function_exists('mysql_unbuffered_query')第11页

?

'mysql_unbuffered_query' : 'mysql_query';

if(!($query = $func($sql, $this->link))&& $type!= 'SILENT'){

$this->halt('MySQL Query Error', $sql);

}

$this->querynum++;

$this->histories[] = $sql;

return $query;}

function affected_rows(){

return mysql_affected_rows($this->link);}

function error(){

return(($this->link)? mysql_error($this->link): mysql_error());}

function errno(){

return intval(($this->link)? mysql_errno($this->link): mysql_errno());}

function result($query, $row){

$query = @mysql_result($query, $row);

return $query;}

function num_rows($query){

$query = mysql_num_rows($query);

return $query;}

function num_fields($query){

return mysql_num_fields($query);}

function free_result($query){

return mysql_free_result($query);}

function insert_id(){

return($id = mysql_insert_id($this->link))>= 0 ? $id : $this->result($this->query(“SELECT last_insert_id()”), 0);}

第12页

function version(){

return mysql_get_server_info($this->link);}

function close(){

return mysql_close($this->link);}

function halt($meage = '', $sql = ''){

$error = mysql_error();

$errorno = mysql_errno();

if($errorno == 2006 && $this->goneaway--> 0){

$this->connect($this->dbhost, $this->dbuser, $this->dbpw, $this->dbname, $this->dbcharset, $this->pconnect, $this->tablepre, $this->time);

$this->query($sql);

} else {

$s = 'Error:'.$error.'';

$s.= 'Errno:'.$errorno.'';

$s.= 'SQL::'.$sql;

exit($s);

} } } ?>

(三)许愿墙文件夹中文件的介绍

有了数据库,就应该设计许愿墙的各个页面。本许愿墙由6个文件夹,11个文件组成,简单介绍各文件的作用:

index.PHP:许愿墙主页,主要功能是查看许愿,任何人都可以查看许愿信息。add.php添加愿望。footer.php页面尾部。head.php页面头部。list.php列表页面

meage.htm首页留言贴样式

db_mysql.cla.php.许愿墙与数据库的连接的文件。C.c:本网站的样式控制。

(四)许愿墙首页设计

我许愿墙的首页文件index.PHP,功能主要是为访客留下相关的信息,并进行留言。

第13页

界面相对简单,但功能很实用!许愿墙的基本功能实现具体如下:

图7.1许愿首页

图7.2添加愿望

第14页

图7.3愿望列表

结束语:通过上面的介绍,相信对该许愿墙整体的构建和各项功能都有了一定的认识,最重要的是学会了许愿墙的设计以及类似网络的编程,更对实际操作和具体设计流程有了清晰的认识。该许愿墙实现了基本功能,并具有自己的特色,例如屏蔽关键字和防灌水功能。由于该许愿墙功能实用,而且界面友好,特别适合于中小型网站使用。对于刚刚接触网络编程人员的信心和兴趣也会有很大提高。

八 许愿墙特色和不足

特色:任何人都可以许愿,任何人都可以看到。无需注册和登录,完全开放。不足:没有添加管理员功能,队员王的管理功能较弱。

第15页

毕业设计论文

毕业设计论文-利用本量利方法测评企业效益第一章××乳业公司的企业概况1、自然状况哈尔滨××乳业公司位于黑龙江省呼兰县境内,企业的前身为松花江第二乳品厂,始建于1982年,占......

毕业设计论文

一、综述..........................................................................................................................2一、信息检索技术...................

毕业设计论文

公司简介陕西展屹建设工程有限公司,成立于1989年,坐落于历史悠久的美丽古城西安。公司注册资金2000万元。施工总承包2级资质,可承接总造价亿元以上工程。经营范围;建筑工程、房......

毕业设计论文

毕业设计(论文)软弱土地基处理对策研究刘建军 ( 建筑工程技术 专业 0730610256 湖北 黄石 435003 ) 摘要:为充分利用土地资源,有必要对软弱土地基进行处理。本文探讨了软弱土地......

毕业设计论文

重庆大学城市科技学院本科学生毕业设计(论文)正文摘要室内设计是指为满足一定的建造目的(包括人们对它的使用功能的要求、对它的视觉感受的要求)而进行的准备工作,对现有的建筑物......

下载毕业设计(论文)word格式文档
下载毕业设计(论文).doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

热门文章
点击下载本文