基于PHP的CMS网站系统开发及应用_第1页
基于PHP的CMS网站系统开发及应用_第2页
基于PHP的CMS网站系统开发及应用_第3页
基于PHP的CMS网站系统开发及应用_第4页
基于PHP的CMS网站系统开发及应用_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

山西省林业职业技术学院信息工程系毕业设计(论文)基于C8051F单片机直流电动机反馈控制系统的设计与研究基于单片机的嵌入式Web服务器的研究MOTOROLA单片机MC68HC(8)05PV8/A内嵌EEPROM的工艺和制程方法及对良率的影响研究基于模糊控制的电阻钎焊单片机温度控制系统的研制基于MCS-51系列单片机的通用控制模块的研究基于单片机实现的供暖系统最佳启停自校正(STR)调节器单片机控制的二级倒立摆系统的研究基于增强型51系列单片机的TCP/IP协议栈的实现基于单片机的蓄电池自动监测系统基于32位嵌入式单片机系统的图像采集与处理技术的研究基于单片机的作物营养诊断专家系统的研究基于单片机的交流伺服电机运动控制系统研究与开发基于单片机的泵管内壁硬度测试仪的研制基于单片机的自动找平控制系统研究基于C8051F040单片机的嵌入式系统开发基于单片机的液压动力系统状态监测仪开发模糊Smith智能控制方法的研究及其单片机实现一种基于单片机的轴快流CO〈,2〉激光器的手持控制面板的研制基于双单片机冲床数控系统的研究基于CYGNAL单片机的在线间歇式浊度仪的研制基于单片机的喷油泵试验台控制器的研制基于单片机的软起动器的研究和设计基于单片机控制的高速快走丝电火花线切割机床短循环走丝方式研究基于单片机的机电产品控制系统开发基于PIC单片机的智能手机充电器基于单片机的实时内核设计及其应用研究基于单片机的远程抄表系统的设计与研究基于单片机的烟气二氧化硫浓度检测仪的研制基于微型光谱仪的单片机系统单片机系统软件构件开发的技术研究基于单片机的液体点滴速度自动检测仪的研制基于单片机系统的多功能温度测量仪的研制基于PIC单片机的电能采集终端的设计和应用基于单片机的光纤光栅解调仪的研制气压式线性摩擦焊机单片机控制系统的研制基于单片机的数字磁通门传感器基于单片机的旋转变压器-数字转换器的研究基于单片机的光纤Bragg光栅解调系统的研究单片机控制的便携式多功能乳腺治疗仪的研制基于C8051F020单片机的多生理信号检测仪基于单片机的电机运动控制系统设计Pico专用单片机核的可测性设计研究基于MCS-51单片机的热量计基于双单片机的智能遥测微型气象站MCS-51单片机构建机器人的实践研究基于单片机的轮轨力检测基于单片机的GPS定位仪的研究与实现基于单片机的电液伺服控制系统用于单片机系统的MMC卡文件系统研制基于单片机的时控和计数系统性能优化的研究基于单片机和CPLD的粗光栅位移测量系统研究单片机控制的后备式方波UPS提升高职学生单片机应用能力的探究基于单片机控制的自动低频减载装置研究基于单片机控制的水下焊接电源的研究基于单片机的多通道数据采集系统基于uPSD3234单片机的氚表面污染测量仪的研制基于单片机的红外测油仪的研究96系列单片机仿真器研究与设计基于单片机的单晶金刚石刀具刃磨设备的数控改造基于单片机的温度智能控制系统的设计与实现基于MSP430单片机的电梯门机控制器的研制基于单片机的气体测漏仪的研究基于三菱M16C/6N系列单片机的CAN/USB协议转换器基于单片机和DSP的变压器油色谱在线监测技术研究基于单片机的膛壁温度报警系统设计基于AVR单片机的低压无功补偿控制器的设计基于单片机船舶电力推进电机监测系统基于单片机网络的振动信号的采集系统基于单片机的大容量数据存储技术的应用研究基于单片机的叠图机研究与教学方法实践基于单片机嵌入式Web服务器技术的研究及实现基于AT89S52单片机的通用数据采集系统基于单片机的多道脉冲幅度分析仪研究机器人旋转电弧传感角焊缝跟踪单片机控制系统基于单片机的控制系统在PLC虚拟教学实验中的应用研究基于单片机系统的网络通信研究与应用基于PIC16F877单片机的莫尔斯码自动译码系统设计与研究基于单片机的模糊控制器在工业电阻炉上的应用研究基于双单片机冲床数控系统的研究与开发基于Cygnal单片机的μC/OS-Ⅱ的研究基于单片机的一体化智能差示扫描量热仪系统研究基于TCP/IP协议的单片机与Internet互联的研究与实现变频调速液压电梯单片机控制器的研究基于单片机γ-免疫计数器自动换样功能的研究与实现基于单片机的倒立摆控制系统设计与实现单片机嵌入式以太网防盗报警系统基于51单片机的嵌入式Internet系统的设计与实现单片机监测系统在挤压机上的应用MSP430单片机在智能水表系统上的研究与应用基于单片机的嵌入式系统中TCP/IP协议栈的实现与应用单片机在高楼恒压供水系统中的应用基于ATmega16单片机的流量控制器的开发基于MSP430单片机的远程抄表系统及智能网络水表的设计基于MSP430单片机具有数据存储与回放功能的嵌入式电子血压计的设计基于单片机的氨分解率检测系统的研究与开发锅炉的单片机控制系统基于单片机控制的电磁振动式播种控制系统的设计基于单片机技术的WDR-01型聚氨酯导热系数测试仪的研制一种RISC结构8位单片机的设计与实现基于单片机的公寓用电智能管理系统设计基于单片机的温度测控系统在温室大棚中的设计与实现基于MSP430单片机的数字化超声电源的研制基于ADμC841单片机的防爆软起动综合控制器的研究基于单片机控制的井下低爆综合保护系统的设计基于单片机的空调器故障诊断系统的设计研究单片机实现的寻呼机编码器单片机实现的鲁棒MRACS及其在液压系统中的应用研究自适应控制的单片机实现方法及基上隅角瓦斯积聚处理中的应用研究基于单片机的锅炉智能控制器的设计与研究超精密机床床身隔振的单片机主动控制PIC单片机在空调中的应用单片机控制力矩加载控制系统的研究项目论证,项目可行性研究报告,可行性研究报告,项目推广,项目研究报告,项目设计,项目建议书,项目可研报告,本文档支持完整下载,支持任意编辑!选择我们,选择成功!项目论证,项目可行性研究报告,可行性研究报告,项目推广,项目研究报告,项目设计,项目建议书,项目可研报告,本文档支持完整下载,支持任意编辑!选择我们,选择成功!单片机论文,毕业设计,毕业论文,单片机设计,硕士论文,研究生论文,单片机研究论文,单片机设计论文,优秀毕业论文,毕业论文设计,毕业过关论文,毕业设计,毕业设计说明,毕业论文,单片机论文,基于单片机论文,毕业论文终稿,毕业论文初稿,本文档支持完整下载,支持任意编辑!本文档全网独一无二,放心使用,下载这篇文档,定会成功!摘要网络的日益发展,使动态网站的开发和管理倍受人们的关注。在这里,介绍了基于PHP框架CodeIgniter的CMS网站系统的开发,剖析了MVC架构在使用过程中的优势,展现了整个后台的制作流程。该CMS以PHP做为主要语言,采用MySQL做为数据库支持。为了方便开发,选用了CI框架,该框架可以实现简单入门、快速开发等。利用以上技术实现了一个小型CMS系统,该系统后台的主要功能有:文章管理、分类管理、静态页面生成、用户管理及系统管理。关键字:PHP,CMS,CodeIgniter,网站开发

AbstractTheincreasingdevelopmentofthenetwork,sothatdynamicwebsitedevelopmentandmanagementofmuchattention.Here,theintroducedbasedontheCMSwebsitePHPframeworkCodeIgnitersystemdevelopment,analysisoftheMVCarchitectureintheuseoftheadvantagesoftheprocess,displayingtheentirebackgroundoftheproductionprocess.TheCMSwithPHPasthemainlanguage,theuseofMySQLasadatabasesupport.Tofacilitatethedevelopment,selectionoftheCIframeworkthatcansimpleentryandrapiddevelopment.Usingtheabovetechnology,asmallCMSsystem,whichhasthemainfunctionofthebackground:Thearticlemanagement,classificationmanagement,staticpagegeneration,usermanagementandsystemmanagement.keywords:PHP,CMS,CodeIgniter,WebDevelopment

目录摘要 2Abstract 3前言 6第一章技术概述 71.1、PHP 71.2、CodeIgniter 71.3、MySQL 71.4、JQuery 7第二章开发环境的安装与配置 9第三章系统设计 103.1、系统概述 103.2、功能模块分析 103.3、编码规定 10第四章数据库设计 12第五章CodeIginter的安装及配置 15第六章后台开发 166.1、搭建后台基本功能 166.2、后台界面设计 196.3、分类管理 216.3.1、分类的添加、删除 216.3.2、分类属性编辑(图6.3.2) 246.4、文章管理 266.4.1、文章添加、编辑 266.4.1、文章的删除 296.5、用户管理 296.6、系统管理 306.6.1、基本参数 306.6.2、友情链接 30结论 31参考文献 32致谢 33

基于PHP的CMS网站系统开发及应用(免费提供下载)我的毕业设计,具体效果看大家点击广告支持一下,让咱这个破学生也赚几个小钱…作者:zhjx922

前言动态网站系统是建立在网络基础设施之上的Web应用系统,它由前台和后台两部分构成,后台包括一组应用服务程序、Web服务器、应用服务器、数据库服务器等,前台是通过浏览器展示信息,实现与用户交互的一组网页。合理的体系结构和良好的程序设计是实现网站功能的基础,友好简洁的交互界面是发挥网站系统功能优势的条件。传统静态网站建设中存在的主要问题有:页面制作风格不统一,难以形成独立可复用的模块,降低了应用集成的灵活性和可扩展性;内容组织繁琐,管理效率低下,严重影响了更新效率,难以对信息进行统一管理;应用开发技术难度大,网站后台开发与前台页面的开发都需要开发人员编写代码,代码编写量大;网站开发周期长。为了解决传统静态网站建设中产生的系列问题,形成了以动态网页技术和数据库技术为基础的CMS(contentmanagementsystem,内容管理系统),它能针对政府和企业网站建设需求,专门面向网站内容编辑、发布与管理的应用系统。CMS的优势有:①能够比较灵活的定制栏目,对栏目进行分类、增删改和排序等管理;②CMS表现和内容分离,用户体验与内容质量的和谐统一,能够方便地对信息发布、录入、修改、删除;③能够方便的管理网站的图片、文档、软件等一切资源,达到资源共享;④简化了网站的内容供给和内容管理的责任委托,能够对信息的安全性和权限进行控制,保证信息访问的安全性和灵活性;⑤能够有效统一网站风格;⑥能在任意地点和时刻进行信息发布,把动态的内容利用静态的页面发布出去,提高网站的访问速度;⑦CMS集成性高,整体高效灵活,扩展性和易维护性好。

第一章技术概述本系统采用CodeIgniter框架(以下简称CI)+MySQL数据库开发,CI使用了模型(Model)-视图(View)-控制器(Controllers)的方法(简称MVC),这样可以更好地使表现层和逻辑层分离。这对项目的模板设计者来说是非常有用的,它最小化了模板中的程序代码量。1.1、PHPPHP,是英文超级文本预处理语言HypertextPreprocessor的缩写。PHP是一种HTML内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,被广泛的运用。PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法它可以比CGI或者Perl更快速的执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。PHP具有非常强大的功能,所有的CGI的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。1.2、CodeIgniterCodeIgniter是一套给PHP网站开发者使用的应用程序开发框架和工具包。她提供一套丰富的标准库以及简单的接口和逻辑结构,其目的是使开发人员更快速地进行项目开发。使用CodeIgniter可以减少代码的编写量,并将你的精力投入到项目的创造性开发上。1.3、MySQLMySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购.对于Mysql的前途,没有任何人抱乐观的态度.目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。1.4、JQueryjQuery由美国人JohnResig创建,至今已吸引了来自世界各地的众多javascript高手加入其team,包括来自德国的JörnZaefferer,罗马尼亚的StefanPetre等等。jQuery是继prototype之后又一个优秀的Javascrīpt框架。其宗旨是——WRITELESS,DOMORE,写更少的代码,做更多的事情。它是轻量级的js库(压缩后只有21k),这是其它的js库所不及的,它兼容CSS3,还兼容各种浏览器(IE6.0+,FF1.5+,Safari2.0+,Opera9.0+)。jQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTMLdocuments、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。

第二章开发环境的安装与配置 在系统中按部就班的配置PHP的运行环境相对比较麻烦,所以我直接选择了WampServer。wampserver是在windows下将Apache+PHP+Mysql集成环境,拥有简单的图形和菜单安装和配置环境。PHP扩展、Apache模块,开启/关闭鼠标点点就搞定,再也不用亲自去修改配置文件了,WAMP它会去做。再也不用到处询问PHP的安装问题了,wampserver一切都搞定了。我选择的是WampServer2.0i版本,里面包含的软件版本分别为:Apache2.2.11、MySQL5.1.36、PHP5.3.0开发工具我选择了EasyEclipseforPHP。相比ZendStudio,没有它那么“庞大”,但是功能缺一点都不少,对于我们一般的开发者来说足够了。

第三章系统设计3.1、系统概述CMS是ContentManagementSystem的缩写,意为"内容管理系统",它具有许多基于模板的优秀设计,可以加快网站开发的速度和减少开发的成本。CMS的功能并不只限于文本处理,它也可以处理图片、Flash动画、声像流、图像甚至电子邮件档案。3.2、功能模块分析内容模块因为做的是内容管理系统,所以这一块儿也是使用最频繁的一个模块了,我们的文章、图片、视频都是从这里添加,功能:文章添加、编辑、删除等分类模块设置网站的分类信息,方便用户查看各类信息,功能:分类添加、删除、分类属性等用户模块管理用户信息,查找用户的注册时间,注册IP等,功能:普通会员、管理员的添加、删除等系统模块设置网站基本参数、上传路径、水印文字、友情链接等3.3、编码规定考虑到编码不统一照成的各种错误,所以我选用UTF-8编码首先设置EasyEclipseforPHP的默认编码。依次打开Windows–Preferences-General-Workspace,将里面的Textfileencoding设置为UTF-8然后打开Windows–Preferences-General-ContentTypes,将Text下面的所有文件都设置成UTF-8这样,在开发过程中,就会减少各种因为编码不统一,照成的各种问题,网站具体功能模块如下图:

第四章数据库设计开发之前,先设计数据库,我们要实现的功能有:文章管理、分类管理、用户管理、网站系统信息和友情链接管理,首先建立数据库zhjx922,同样的编码设定为UTF-8,建表信息如下:文章表:字段名称数据类型字段大小是否主键说明aidint20是自动编号IDtitlechar160标题sourcechar160来源authorchar30作者keychar200关键字sort_idint8对应分类IDcontenttext内容countint20点击量updateint20更新时间(记录时间戳)分类表字段名称数据类型字段大小是否主键说明sidint10是自动编号IDfidint10父分类IDsort_namechar50分类名称sort_orderint8排序sort_datechar20添加时间sort_typeint2分类类型sort_contributetinyint2是否支持投稿sort_hiddentinyint2是否隐藏栏目sort_competenceint2浏览权限sort_tagchar50分类标签其它表单建表代码:/**评论表单**/CREATETABLE`dz_comments`( `id`INT(20)NOTNULLAUTO_INCREMENT, `comments_art_id`INT(20)NOTNULL, `comments_user`CHAR(20)NOTNULL, `comments_mail`CHAR(30)NOTNULL, `comments_site`CHAR(30)NOTNULL, `comments_comments`TEXTNOTNULL, `comments_date`CHAR(20)NOTNULL, PRIMARYKEY(`id`) )ENGINE=InnoDBDEFAULTCHARSET=UTF8AUTO_INCREMENT=1;/**网站访问信息表单**/CREATETABLE`dz_count`( `id`INT(20)NOTNULLAUTO_INCREMENT, `count_date`CHAR(20)NOTNULL, `count_day`INT(20)NOTNULL, PRIMARYKEY(`id`) )ENGINE=InnoDBDEFAULTCHARSET=UTF8AUTO_INCREMENT=1;/**链接表单**/CREATETABLE`dz_links`( `lid`INT(10)NOTNULLAUTO_INCREMENT, `links_name`CHAR(50)NOTNULL, `links_site`CHAR(100)NOTNULL, `links_date`CHAR(20)NOTNULL, PRIMARYKEY(`lid`) )DEFAULTCHARSET=UTF8AUTO_INCREMENT=1;/**用户表单**/CREATETABLE`dz_member`( `mid`INT(5)NOTNULLAUTO_INCREMENT, `username`CHAR(20)NOTNULL, `password`CHAR(50)NOTNULL, `cercode`CHAR(50)NOTNULL, `email`CHAR(32), `regip`CHAR(15), `regdate`INT(10), `lastloginip`INT(10), `lastlogintime`INT(10), `group_id`INT(2), PRIMARYKEY(`mid`) )DEFAULTCHARSET=UTF8AUTO_INCREMENT=1;21232f297a57a5a743894a0e4a801fc3/**网站参数表单**/CREATETABLE`dz_sys`( `sys_name`CHAR(50)NOTNULL, `sys_value`CHAR(200), `sys_explain`CHAR(50), PRIMARYKEY(`sys_name`) )DEFAULTCHARSET=UTF8;

第五章CodeIginter的安装及配置 我的网站设定在E:\wamp\www\zhjx922目录下 首先下载好CI1.7.2的压缩包,只需把里面system文件夹和index.php文件解压到根目录下简单配置一下,打开app/config/config.php,$config['base_url'] ="http://localhost/zhjx922/";$config['subclass_prefix']='DZ_';然后打开app/config/database.php设置数据库参数$db['default']['hostname']="localhost";$db['default']['username']="root";$db['default']['password']="";$db['default']['database']="zhjx922";$db['default']['dbdriver']="mysql";$db['default']['dbprefix']="dz_";添加HMVC支持CI是MVC架构,为了开发方便,在网上找个一个HMVC模块modular_extensions_5231,将里面的3个文件(Controller.php、Modules.php、MY_Router.php)解压以后放到app/library里面。App下新建modules目录。里面就可以放不同的模块了。如图:

第六章后台开发6.1、搭建后台基本功能启动WampServer,然后启动EasyEclipseforPHP为方便后台的管理,后台所有的程序均继承app/libraries下DZcms类,该类主要是判断管理员是否登录,以保证程序后台的安全代码如下://DZcms类继承ControllerclassDZcmsextendsController{ functionDZcms() //构造函数 { parent::Controller(); $this->is_login(); //判断用户是否登录 } //操作提示functionmsg($msg,$url) { $data['msg']=$msg; $data['url']=$url; $this->load->view('msg',$data); } /** 判断用户是否登录的函数* 这里调用了CI自带的两个方法fetch_class和fech_method来判* 断当前所在的类和方法*/functionis_login() { if($this->session->userdata('login_name')==TRUE) { if($this->router->fetch_class()=='member'&&$this->router->fetch_method()=='login') {redirect('admin');} }else{ if($this->router->fetch_method()!='login') {redirect('member/login');} } }}为了方便开发,于是扩展了一下Loader核心类,在app/libraries下新建文件DZ_Loader.php,关键代码如下:classDZ_LoaderextendsLoader{ publicfunctionLoader(){ parent::Loader(); } publicfunctionview($view,$vars=array(),$return=FALSE){$vars['adminurl']=$this->config->item('base_url').APPPATH.'admin/'; //后台文件存放位置 $vars['baseurl']=$this->config->item('base_url').'web/'; returnLoader::view($view,$vars,$return); //前台文件存放位置 }CI里面有一个非常好,非常方便的功能-模型(Model),只要按照CI的要求写出我们自己的模型,可以方便的调用,我把数据库中各个表的操作放到了app/models中,根据表的名字,建立了article_model.php、links_model.php、member_model.php、sort_model.php、sys_model.php,以article_model.php为例:/** 首先继承Model*/classArticle_modelextendsModel{ functionArticle_model() { parent::Model(); $this->dz_db='article'; //表的名称 } /* *获取文章总数*/ functionart_count() {$this->db->join('sort','sort.sid='.$this->dz_db.'.sort_id'); $this->db->order_by('aid','desc'); $this->db->from($this->dz_db);return$this->db->count_all_results(); //运用CI的ActiveRecord类,有效减少程序代码,增加代码质量 } functionget_art_sort($sid,$limit=0,$offset=1) {$this->db->join('sort','sort.sid='.$this->dz_db.'.sort_id'); $this->db->where('sort_id',$sid); $this->db->limit($offset,$limit); $this->db->order_by('update','desc'); $query=$this->db->get($this->dz_db); return$query->result_array(); }6.2、后台界面设计我把后台所需的CSS,JS及IMAGES统一放在app/admin目录下面接着就是后台的入口,app/modules下的admin控制器代码如下://后台所有类均继承DZcmsclassAdminextendsDZcms{ functionAdmin() { parent::DZcms(); } functionindex() { $this->load->view('admin'); //加载后台视图 }}后台首页面整个后台使用DIV+CSS布局,及iframe框架,考虑到到适应各种浏览器,在这里运用了相对布局及相关jQuery插件,布局关键代码于admin.php中,CSS样式则写在admin.css文件中,而一些常用JS写在admin.js中。后台的样式布置好了,然后就进入了我们的功能开发阶段。6.3、分类管理上图:分类界面(6.3.1)上图:分类属性(6.3.2)6.3.1、分类的添加、删除 该部分运用了AJAX的无刷新技术,快速、明了的添加删除分类(图6.3.1) 关键JQUERY代码如下(实现了无刷新添加分类的功能): /*添加顶级分类*/ $(".add_top").click(function(){ $(this).parent().parent().before('<tr><td><inputtype="text"name="order[]"class="order"value="0"/></td><td><inputtype="text"name="name[]"value="顶级分类"class="text"style="margin:3px0px;"/></td><td></td></tr>'); }); /*添加自分类*/ $(".add_son").click(function(){varorder='new'+$(this).parent().prev("td").children("input").attr("name")+'[]'; varname='new'+$(this).prev("input").attr("name")+'[]'; $(this).parent().parent().after('<tr><td><inputtype="text"name="'+order+'"class="order"value="0"/></td><td><divclass="td_bg"></div><inputtype="text"name="'+name+'"value="子分类"class="text"style="margin:3px0px;"/></td><td></td></tr>'); }); $(".add_son1").click(function(){ varorder=$(this).parent().prev("td").children("input").attr("name")+'[]'; varname=$(this).prev("input").attr("name")+'[]'; varcc=$(this).prevAll("span").html()+'<divclass="span"></div>'; $(this).parent().parent().after('<tr><td><inputtype="text"name="'+order+'"class="order"value="0"/></td><td><span>'+cc+'</span><divclass="td_bg"></div><inputtype="text"name="'+name+'"value="子分类"class="text"style="float:left;margin:3px0px;"/></td><td></td></tr>'); }); 动态生成HTML之后,我们需要将数据提交到数据库中,数据分两类,一类是原有的(数据库读出来的),一类是新加的,根据这种情况分成两类数据提交,因为原有的数据Input标签的name是从数据库读出来的(赋予其name为name[*]),而新的却不是这样(赋予其name为newname[*]),根据这个的不同,来识别数据是新的还是原有的。关键代码如下: /*获取新添加的分类信息*/$neworder=$this->input->post('neworder'); $newname=$this->input->post('newname'); /*更新原有的信息*/$order=$this->input->post('order'); $name=$this->input->post('name');然后根据提交的值做出相应的处理,提交或更新到数据库 分类信息的删除过程:先删除当前分类,然后删除分类下的文章(同时删除文章下的附件),之后删除分类的子类,这样循环下去就可以删除干净了,关键代码: functiondel_sort() { $sid=$this->uri->segment(3,0); if($sid!='0'){ if($this->msort->del_sort($sid)==TRUE) { //获取分类下属文章 $sart=$this->marticle->get_sort_article($sid); foreach($sartas$value) {$this->delupload($value['aid']); //单独定义一个删除附件的函数,方便调用 } if($this->marticle->del_sort_article($sid)==TRUE) { //判断是否删除成功 } } } }functiondelupload($aid) //附件删除函数 { //删除文章下的附件(图片,动画) $paths=$this->msys->get_one_sys('site_uploads'); //上传路径 $upload_path=$paths['sys_value']; $imgresult=$this->mimages->get_images($aid); //获取要删除的对象 if($imgresult==TRUE) { foreach($imgresultas$value) {$file="./".$upload_path."/".$value['name']; //删除文件位置 @unlink($file); } } $this->mimages->del_images($aid); //删除数据库中的信息 } 6.3.2、分类属性编辑(图6.3.2) 可以设置分类是否支持投稿、是否隐藏栏目、分类类型及浏览权限等,关键代码: functionedit_sort() { $sid=$this->uri->segment(3,0); //分类ID $newsid=$this->input->post('sid'); if($sid!=0) { $query=$this->msort->get_one_sort($sid); //获取分类信息 $data['onesort']=$query['0']; } if(isset($_POST['submit'])) { //添加、更新分类信息$array=array( 'sort_type'=>$this->input->post('type'), 'sort_contribute'=>$this->input->post('contribute'), 'sort_hidden'=>$this->input->post('hidden'), 'sort_competence'=>$this->input->post('competence'), 'sort_tag'=>$this->input->post('tag') ); $query=$this->msort->up_sort($array,$newsid); }else{ $this->load->view("sort_edit",$data); } }

6.4、文章管理图:文章列表(6.4.1)图:文章添加(6.4.2)6.4.1、文章添加、编辑 在文章添加这块儿,文章的添加和编辑属于同一个模板,为方便判断用户当前属于那种模式,在HTML中,我添加了一个隐藏域<inputtype="hidden"name="edit"value="<?phpecho$onearticle['aid'];?>"/>,如果有值的话,属于编辑状态,反之为添加状态,关键代码如下: functionart_add() { $aid=$this->uri->segment(3,0); $data['sortlist']=$this->msort->get_all(); if($aid!=0) //如果获取到aid,说明属于编辑模式 {$query=$this->marticle->get_one($aid); //读取当前要编辑的文章 $data['onearticle']=$query['0']; }else{ //防止错误$data['onearticle']=array( 'aid' => '', 'title' => '', 'sort_id' => '', 'source' => '', 'author' => '', 'key' => '', 'content' => '' ); } if(isset($_POST['submit'])) { if($_POST['edit']!='') //更新模式 { $array=array( 'title' => $this->input->post('title'), 'sort_id' => $this->input->post('sort_id'), 'source' => $this->input->post('source'), 'author' => $this-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论