《四川安信企业网站新闻发布系统》毕业设计.docx
《《四川安信企业网站新闻发布系统》毕业设计.docx》由会员分享,可在线阅读,更多相关《《四川安信企业网站新闻发布系统》毕业设计.docx(35页珍藏版)》请在冰豆网上搜索。
《四川安信企业网站新闻发布系统》毕业设计
本科生毕业设计(论文)
题目:
《四川安信企业网站新闻发布系统》
教学单位:
计算机科学与技术学院
姓名:
_郭##___________
学号:
__20063#######_____
年级:
_2006级__________
专业:
__信息与计算科学__
指导教师:
___黄##
职称:
___教授
2010年4月26日
摘要:
随着Internet的飞速发展,Internet技术逐渐被应用到各行各业中,成为信息业研究开发的焦点。
一个好的网站建设已成为企业和个人宣传自己的重要手段之一,同时也是人们相互交流信息,交流情感,实现即时通信的重要手段。
Web本身所具信息量大,传递快速,无时空限制等特点,为广大网络用户提供了更好的个性化服务。
本论文将用PHP技术来组建个性化的网站,摈弃单一的网站建设,创建内容丰富的网页。
Abstract:
Withthehigh-speeddevelopmentofelectroniccomputerscienceandwebtechnology,theinternettechnologyhasbeenusedgraduallyinmanyfields,whichhasbeenafocusofresearchingandexploitationofinformationindustry.Agoodconstructedwebsitehasbecomeoneoftheimportantmeansofbusinessenterprisewithpersonalpublicityown,alsoistheimportantmeansthatpeoplemutuallyintercourseinformation,exchangesensibility,realizecommunicatingbetimes.Webhasgreatcontentsofinformation,transfersspeedly,hasnothespace-timelimited,providingmorebetterindividuationservicesforthespaciousnetworkcustomers.ThisthesiswillconstructindividuationwebsitewithPHPtechnic,casttingawaysinglewebsite,bulidingrichnesscontentwebpage。
【关键词】:
网站建设数据库PHPHTML新闻系统
KeyWords:
website-constructedDatabasePHPHTMLNewssystem
目录
一、引言4
二、公司网站的开发技术使用4
1、PHP4
2、HTML语言5
3、MySQL5
4、网站开发工具6
三、公司网站新闻发布系统7
1、需求说明7
2、用户及其特点7
四、功能板块系统分析与总体设计8
1、系统功能描述8
2、系统功能模块划分10
3、结构图11
4、系统的概要设计11
5、系统流程分析12
五、数据库系统分析与总体设计13
1、数据库的创建13
2、数据库的逻辑结构设计13
六、详细设计与实现16
1、目录结构16
2、模块划分16
3、系统主界面16
4、后台管理员登陆界面18
5、新闻分类的设计与实现20
6、新闻列表的设计与实现23
7、新闻添加的设计与实现25
七、结束语27
参考文献:
28
致谢28
一、引言
四川安信投资担保管理有限公司(以下简称安信企业)是经国家有关部门批准,专业从事融资担保及相关风险管理的担保企业。
为了扩大企业规模,增强企业的竞争力,公司决定向多元化发展,借助Internet在国内的快速发展,聚集部分资金投入网站建设,为企业和用户提供综合信息服务,推广公司业务,并展现企业风采。
安信企业主要业务是:
中小企业融资、工程担保、个人汽车消费贷款担保、保险代理、住房抵押贷款担保、投资管理等综合性融资担保业务,网站主要是展现这些业务,并发布公司新闻和行业新闻。
网站能够发布各类信息,并能对信息进行修改、删除。
用户在访问网站时如果没有找到有用的信息,他会很快就会离开,或者,用户在访问网站搜寻有关公司业务方向的信息未能得到答案或者找起来很繁琐,也会很难留住用户,因此网站建设时应着重考虑在界面设计上美观大方、方便、快捷、操作灵活。
现在针对公司网站的新闻发布系统做设计。
网站新闻发布系统,又称为信息发布系统,是将网页上的某些需要经常变动的信息,类似新闻、新产品发布和业界动态等更新信息集中管理,并通过信息的某些共性进行分类,最后系统化、标准化发布到网站上的一种网站应用程序。
网站信息通过一个操作简单的界面加入数据库,然后通过已有的网页模板格式与审核流程发布到网站上。
二、公司网站的开发技术使用
1、PHP
1.1PHP概述
PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法。
它可以比CGI或者Perl更快速的执行动态网页。
用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
PHP具有非常强大的功能,所有的CGI的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。
PHP的特性包括:
开放的源代码:
所有的PHP源代码事实上都可以得到。
PHP是免费的。
php的便捷性:
php十分便捷,学习简单
基于服务器端:
由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS下。
嵌入HTML:
因为PHP可以嵌入HTML语言,所以学习起来并不困难。
简单的语言:
PHP坚持脚本语言为主,与Java和C++不同。
效率高:
PHP消耗相当少的系统资源。
图像处理:
用PHP动态创建图像
面向对像:
在php4,php5中,面向对象方面都有了很大的改进,现在php完全可以用来开发大型商业程序。
PHP相对于其他语言,编辑简单,实用性强,更适合初学者。
2、HTML语言
HTML是英文HyperTextMarkupLanguage的缩写,中文的意思是超文本标记语言。
它是通过嵌入代码或标记来表明文本格式的国际标准,用它编写的文件(文档)扩展名为.html或.htm,是可供浏览器解释浏览的文件格式。
ASP技术就是在HTML中嵌入脚本,以此来制作动态网站的。
HTML提供了最基本的功能,比如:
文字的处理、表格、表单的制作,图象的插入以及一些多媒体功能的实现,所有这些都在网页制作方面为设计者提供了极大的方便。
3、MySQL
3.1MySQL概述
MySQL最初的开发者的意图是用mSQL和他们自己的快速低级例程(ISAM)去连接表格。
不管怎样,在经过一些测试后,开发者得出结论:
mSQL并没有他们需要的那么快和灵活。
这导致了一个使用几乎和mSQL一样的API接口的用于他们的数据库的新的SQL接口的产生,这样,这个API被设计成允许为用于mSQL而写的第三方代码更容易移植到MySQL。
MySQL这个名字是怎么来的已经不清楚了。
基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,MySQLAB创始人之一的MontyWidenius的女儿也叫My。
这两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。
MySQL的海豚标志的名字叫“sakila”,它是由MySQLAB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。
获胜的名字是由来自非洲斯威士兰的开源软件开发者AmbroseTwebaze提供。
根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附近的坦桑尼亚的Arusha的一个小镇的名字。
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
在2008年1月16号被Sun公司收购。
而2009年,SUN又被Oracal收购.对于Mysql的前途,没有任何人抱乐观的态度.目前MySQL被广泛地应用在Internet上的中小型网站中。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
3.2Windows下MySQL的安装配置
PHP能够支持市面上的大多数数据库,如MySQL、Access、SQLServer、Oracle
等,而MySQL数据库是PHP程序开发人员公认的黄金搭档,这不仅因为MySQL
是完全网络化的跨平台关系型数据库系统,也是具有客户机/服务器体系结构的
分布式数据库管理系统。
它具有功能性强、使用简洁、管理方便、运行速度快、
版本升级快、安全性高等优点,而且MySQL数据库完全免费,从官方网站http:
//即可免费下载到最新版本的MySQL安装包。
在Windows下实现MySQL的安装配置的操作步骤如下:
(1)如果下载的是WindowsEssentials(x86),例如mysql-4.1.11-essenti
al-win.exe,直接双击该文件安装即可,安装完毕后,在“开始”菜单中选择“运
行”命令,在弹出的对话框中输入cmd,进入“命令提示符”,输入mysqld-nt.
exe,即可启动MySQL服务;如果还想详细地配置MySQL,则需要进入C:
\mysql
\bin目录,运行MySQLInstanceConfig.exe,并按提示操作即可。
(2)如果下载的是Windows(x86),例如mysql-essential-5.0.24-win32.ms
i,解压该文件后双击setup.exe安装程序即可逐步完成MySQL的安装。
(3)如果下载的是Withoutnoinstall(unzipinC:
\),直接将该文件解压
到指定的安装目录下。
在“开始”菜单中选择“运行”命令,在弹出的对话框中
输入cmd,然后进入“命令提示符”,输入mysqld-nt.exe命令,即可启动MyS
QL服务器。
4、网站开发工具
4.1Dreamweaver8
Dreamweaver是在网页设计与制作领域中用户最多、应用最广、功能最强大的软件,随着Dreamweaver8的发布,更坚定Dreamweaver在该领域的地位。
它集网页设计、网站开发和站点管理功能于一身,具有可视化、支持多平台和跨浏览器的特性,是目前网站设计、开发、制作的首选工具。
4.2Flash
Flash是web上重要的动画制作工具,是一种交互式矢量多媒体技术。
Flash的前身是Future Splash,是早期网上流行的矢量动画插件。
在Macromedia公司收购了Future splash以后便将其改名为Flash2,一直到现在的Flash MX。
因特网上现己经有成千上万个Flash站点,著名的微软MSN新闻站就采用了大量的Flash动画。
Macromedia还有专门的Shockwave站点,全部采用了Shockwave Flash和Director。
由于网络带宽的限制,在主页上放置过大的文件是不现实的。
但是因特网发展迅猛,枯燥无味的静态页面很难再引起用户的兴趣,制作人员都希望能使用引人人胜的动态效果来吸引用户的注意,使用Java Applet是一个解决办法,但是真正精通它并不是件容易的事情。
而且,通过编写代码来生成动画永远都不是设计人员真正的手段。
因此,Shockwave Flash诞生了,并且立即被投入到应用中去。
4.3Photoshop
Photoshop是平面图像处理业界霸主Adobe公司推出的跨越PC和MAC两界首屈一指的大型图像处理软件.它功能强大,操作界面友好,得到了广大第三方开发厂家的支持,从而也赢得了众多的用户的青睐.
ADOBEPHOTOSHOP最初的程序是由Mchigan大学的研究生Thomas创建,后经Knoll兄弟以及ADOBE公司程序员的努力ADOBEPHOTOSHOP产生巨大的转变,一举成为优秀的平面设计编辑软件。
它的诞生可以说掀起了图象出版业的革命,目前ADOBEPHOTOSHOP最新版本为6.0,它的每一个版本都增添新的功能这使它获得越来越多的支持者也使它在这诸多的图形图象处理软件中立于不败之地。
4.4FlashFXP
FlashFXP是一款功能强大的FXP/FTP软件,集成了其它优秀的FTP软件的优点,如CuteFTP的目录比较,支持彩色文字显示;如BpFTP支持多目录选择文件,暂存目录;又如LeapFTP的界面设计。
支持目录(和子目录)的文件传输,删除;支持上传,下载,以及第三方文件续传;可以跳过指定的文件类型,只传送需要的本件;可自定义不同文件类型的显示颜色;暂存远程目录列表,支持FTP代理及Socks3&4;有避免闲置断线功能,防止被FTP平台踢出;可显示或隐藏具有“隐藏”属性的文档和目录;支持每个平台使用被动模式等。
三、公司网站新闻发布系统
1、需求说明
该系统在性能功能上应达到如下需求:
操作简单、界面友好、完全框架式的页面布局,使得新闻的录入工作更简便,许多选项包括新闻分类、新闻列表、新闻出处等只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。
对常见网站的新闻管理的各个方面:
新闻录入、浏览、删除、修改、搜索等方面都大体实现,实现了网站对即时新闻的管理要求。
通过相关调查,要求该系统应具有以下功能:
1.通过网络浏览各类新闻及相关信息。
2.新闻能分类显示相关信息。
3.提供站内新闻的搜索功能。
4.支持其它网站的友情链接。
5.为后台管理提供管理入口。
6.后台编辑个类新闻并且管理新闻信息。
2、用户及其特点
对于本系统,用户共分为两类:
普通用户、管理员,各有不同的权限。
(一)普通用户:
此类用户具有以下权限:
1.浏览已发布的新闻。
2.查看、修改和删除自己的注册信息。
3.发表评论。
4.查看其它普通用户的评论。
5.登录后可以对个人密码进行修改。
6.可与其他普通用户进行交流,收发信息。
(二)管理员:
此类用户具有以下权限:
1.浏览所有网页。
2.具有管理普通用户的权限。
3.发布公告信息,可供用户浏览。
4.对不合适和没用的评论进行删除。
5.向数据库导入各用户的注册信息信息。
6.登陆后可修改个人密码。
7.可以删除任何一个普通用户的所有信息。
四、功能板块系统分析与总体设计
使用新闻发布及管理系统(PHP制作的动态网页)可以使新闻发布和管理变得很轻松,管理员只需设置标题、内容、作者和图片等新闻就可以了,系统将自动生成对应的网页。
本文将对新闻发布及管理系统进行系统分析与总体设计。
1、系统功能描述
新闻发布及管理系统包括新闻类别管理、新闻发布管理、新闻查询、友情链接、网友评论和用户管理等模块。
具体描述如下:
1.新闻类别管理:
(1)新闻类别的录入,包括类别编号和类别名称等信息;
(2)新闻类别的修改;
(3)新闻类别的删除;
(4)新闻类别的查询。
2.新闻发布管理:
(1)基本新闻信息的录入,包括新闻标题、新闻作者、新闻内容和所属类别等;
(2)基本新闻信息的修改;
(3)基本新闻信息的删除;
3.新闻查询模块:
(1)按照新闻类别分页显示新闻;-
(2)按照日期分页显示新闻。
4.网友(普通用户)留言模块:
(1)网友对某条新闻发表评论;
(2)管理员可以删除新闻评论。
5.普通用户管理功能:
(1)普通用户信息的录入,包括用户名和密码等信息;
(2)普通用户信息的修改;
(3)普通用户信息的删除。
6.友情链接模块:
(1)删除链接;
(2)修改链接;
(3)添加链接;
(4)查看链接;
2、系统功能模块划分
新闻发布系统功能模块关系图
在本系统中,用户管理模块的功能比较简单。
在系统初始化时,有一个默认的“系统管理员”用户admin,由程序设计人员手动地添加到数据库中。
admin用户可以创建用户、修改和删除用户;普通用户则只能修改自己的用户名和密码。
普通用户功能模块关系图
3、结构图
功能结构图
4、系统的概要设计
本项目是基于PHP+Apache+MySQL的WEB应用系统。
用户界面一致,使用简单,能实现不同的人员,从不同的地点,以不同的方式访问和操作;一般客户机不需要额外安装新的软件,只需安装有浏览器就可以进行操作。
方便维护管理,应用程序运行在服务器端,这样便于系统的管理、更新和升级,降低了服务端和客户端之间的依赖性,同时通过了应用程序代码的安全性,有效地保护系统平台和服务端的数据库的安全。
系统分层图
5、系统流程分析
为了使读者进一步了解本实例系统的设计,本小节将对系统进行流程分析。
多用户系统的工作流程都是从用户登录模块开始,对用户的身份进行认证。
身份认证可以分为以下两个过程:
(1)确认用户是否是有效的注册用户。
(2)确定用户的类型。
第1个过程决定用户能否进入系统。
第2个过程根据用户的类型决定用户的操作权限,从而决定用户的工作界面。
本系统分为前台系统和后台系统两个部分。
前台系统不需要进行身份认证,任何人都可以通过浏览器阅读已经发布的新闻、发表网友评论。
后台系统的流程分析如图所示。
admin用户拥有所有的权限,普通用户只能对自己发布的新闻进行管理,包括修改新闻内容、删除新闻和删除网友评论。
后台系统的流程分析图
五、数据库系统分析与总体设计
这一节将介绍系统的数据库表结构和创建表的界面。
1、数据库的创建
本系统用的是MySQL数据库,创建是用phpMyAdmin网页式的数据库工具来完成的。
首先创建一个数据库news_php100,用来保存本系统的所有数据。
2、数据库的逻辑结构设计
根据用户需求,共创建了5个表,分别为:
系统配置表:
p_config、系统用户表:
p_admin、新闻分类表:
p_newsclass、新闻基本表:
p_newsbase、新闻内容表:
p_newscontent。
以下是新闻发布系统的数据库表结构的详细描述:
1.系统用户表:
p_admin系统用户表:
p_config
用系统用户表来保存系统用户(管理员)的基本信息。
序列编号
字段名称
数据类型
说明
1
uid
int(3)
管理员编号
2
m_id
int
(2)
权限编号
3
username
varchar(25)
管理员账号
4
password
varchar(50)
密码
5
name
varchar(50)
名称
2.系统配置表:
p_config
用系统配置表来保存相关配置信息。
序列编号
字段名称
数据类型
说明
1
name
varchar(20)
系统配置信息
2
values
varchar(100)
信息值
3
remark
tinytext
备注
3.新闻基本表:
p_newsbase
用新闻基本表来保存新闻列表的相关信息。
序列编号
字段名称
数据类型
说明
1
id
int(11)
自动编号
2
cid
int(11)
新闻编号
3
title
varchar(50)
新闻标题
4
author
varchar(25)
新闻作者
5
date_time
int(10)
新闻发布时间
4.新闻分类表:
p_newsclass
新闻分类表主要用来保存新闻的分类信息。
序列编号
字段名称
数据类型
说明
1
id
int(11)
自动编号
2
f_id
int(11)
新闻类别编号
3
name
varchar(25)
分类名称
4
keyword
varchar(100)
关键字
5
remark
varchar(100)
备注
5.新闻内容表:
p_newscontent
此表主要用来保存各条新闻的详细内容信息。
序列编号
字段名称
数据类型
说明
1
nid
int(11)
自动编号
2
keyword
varchar(100)
关键字
3
content
text
新闻详细内容
4
remark
text
备注
新闻发布系统数据库各表关联图
六、详细设计与实现
1、目录结构
在运行实例时,需要将web目录复制到wamp目录下的www子目录下,该系统的目录结构如图所示:
新闻发布系统目录结构图
2、模块划分
系统功能模块的划分,是在需求分析基础上进行的,是把具有复杂功能的系统通过设计分解为具有基本独立,功能简单,易于实现等特点的多个功能模块。
模块划分的好处是,由于组成系统的模块基本独立,功能明确,因此便于模块的独立开发、维护和修改,而不会影响系统中的其他模块。
3、系统主界面
新闻发布系统有两种用户:
普通用户和管理员,分别有不同的权限,但都是从同一界面登陆,此系统首页采用DIV+CSS框架,使得页面看起来美观舒适。
能自动获取系统当前时间,展示新闻列表内容和广告等信息。
新闻界面和源码如下:
新闻发布系统主页
后台代码:
index.php
php
include_once('global.php');
$sql="SELECT*FROM`p_newsclass`wheref_id=0orderbyidDESC";
$query=$db->query($sql);
while($row_class=$db->fetch_array($query)){
$sm_class[]=array("name"=>$row_class[name],"id"=>$row_class[id]);
}
$smarty->assign("sm_class",$sm_class);//导航引入
//==============
$sql="SELECT*FROMp_config";
$query=$db->query($sql);
while($row_config=$db->fetch_array($query)){
$sm_config[]=$row_config[values];
}
$smarty->assign("sm_config",$sm_config);//配置引入
//==============
$sql="SELECT*FROM`p_newsbase`orderbyidDESClimit10";
$query=$db->query($sql);
while($row_news=$db->fetch_array(