分类网站 php,PHP教程:实现网站的无限分类

1.分析

我们在用 php 制作网站时,分类是很重要的,在分类下面又再分类这第二个分类称为次分类,而现在大多数网站分类只分到第三类:

第一分类(父分类)-->第二分类(子分类)-->第三分类(孙分类)

这种亲缘分类越多,程序和数据库的控制就越加的复杂困难.在同一级的分类处理和控制是非常的简单的,因为只需要一个数据库来记载这一级的分类就行了,如:系统,新闻等分类,在这一级上处理是很简单的,但对一个网站来说一级分类是不够的,还需要再分类,如:

系统-->linux,windows

新闻-->linux 新闻,windows 新闻

这样分类就清晰些了,至少让人明白了,系统包括 linux 和 windows,而新闻包括 linux 新闻和 windows 新闻,为了让信息资料更加清晰,于是再继续分类:

linux-->系统工具,内核,编程语言,开发工具

...

分类到了第三级,信息资料的处理就更清晰了,也就是说为了很清晰地处理资料,分类越详细就越方便,这样即方便处理信息又方便网友目的明确地查找到需要的资料,但随着不断的细化分类,在程序和数据库的控制上就会越来越困难.

困难一:如何在数据库里处理这些互有关联的亲缘分类?

困难二:如何用 php 完成这种一目了然的关系?

这种分级多而细的分类是每个 php 程序员都必须解决的问题,因为制作一个好而出色的网站分类问题是不可避免的,而解决这个问题又是相当复杂的,其中最大的问题就是数据库的分类处理,因为如果数据库处理不当将会带来巨大的工作量甚至是不得不重新规划数据库...

这并不是夸张,因为很多人在数据库处理上就会采用一级分类建立一个数据库的做法,我当时也是采取这种方法处理分类的,因大多网站都是分到第三级,所以数据库里只需三个分类数据库来进行处理.但是需要继续向下分类时,这种做法的弊端就显露出来了,因为越往下分,工作量,程序量将会巨增..

我要介绍的这种方法就是如何用一个分类数据库建立无限向下分级的分类方法,用过 windows 的读者都知道 windows 文件夹就可以建立无限分级的目录,可在目录下面继续建立目录,这样没完没了的分下去,Linux 的目录创建也有这种功能,我介绍的这个方法跟这种形式相同.

2.数据库的规划

------------------------------------------------------------

前面谈到分类的复杂性,因此如何规划数据库便成为了实现无限分类非常重要的一步.

我曾介绍过论坛的数据库规划,不错论坛能够实现无限的跟接,无限分类便是这种形式的扩展,分类同样是这种子父的关联关系,所以分类的数据库就是如何确立明确这种子父关系,这里面有几个难点.

1)如何处理各分类的信息存储;

2)如何处理分类的亲缘关系;

3)如何处理对信息的查询;

亲缘关系的数据库处理与论坛的数据库处理类似,这里建个 type 的数据库用来处理分类:

建立字段:

id(int):用来记录各分类的自然序号

uid(int):用来记录该分类的父分类的 id 号

type(char):类别的名称

roue_id(varchar):亲缘树,以 :0:2:10:20: 的 id 连接表明亲源关系

roue_char(varchar):亲缘树,类似 :系统:linux:开发工具:gcc: (这个字段有没有都没关系,为了更方便地了解各亲缘关系当然字符表述比数字表述更直接^o^,不过最好加上这个字段)

这样一个无限分类的类别表就建立了起来,接下来就需要建立存储信息的数据库,处理查询一个表最方便所以这里建立一个表存储信息 type_message:

id(int):信息的序号;

typeid(int):所属类别的 id 号;

title(varchar):信息标题;

message(text):信息内容;

time:信息建立的时间;

这两个数据表就能够完成无限分类的这个任务了(两个表的辅助字段就没加了,读者可自行加入).

剩下的任务就全部交由 php 来处理完成。

3.程序控制

实现无限分类这个功能中就属这一步最为复杂辛苦,首先看看程序需要完成的步骤:

1)创建分类上传;

2)创建信息上传;

3)明确显示各分类及其之间的关系;

4)处理查询功能;

5)如何处理编辑和删除的功能;

而这五步中最为困难的就是第五个步骤,因为对分类的编辑和删除涉及到一至性的问题.

下面我就逐一描述 php 的程序控制:

1)创建分类上传

在介绍这个功能前,先介绍一下 explode( ) 这个函数,这是个字串处理函数,用来分解字串的,具体的用法,例:

分解"0:1:2:3:4"里的数字

val='0:1:2:3:4';

rid=explode(":",val);

经过 explode( ) 函数处理,val 内的所有数字都分解到 rid 数组中了,要引用时只需打印:echo 'rid[0],rid[1],rid[2]..."; 就行了.explode( ) 函数在整个分类处理中起着非常重要的作用,好现在开始介绍无现分类的程序控制.

管理后台文件夹:admin,管理员帐号:admin,密码:admin 运行本程序,需要你的主机或者虚拟主机配置有php+mysql+zend optimizer的系统运行环境。 本机调试可以自己配置系统运行环境,配置教程请下载PHP环境一键安装包, 下载地址:http://www.wygk.net.cn/dow/phpmysqlzend.rar 如虚拟主机调试,则将网站文件全部上传到空间商指定的文件夹下,再执行安装过程,安装路径是你的网址后加install/index.php,比如你的网址是http://www.abc.com,则安装路径是http://www.abc.com/install/index.php,如在本机调试,安装地址是http://127.0.0.1/install/index.php或者http://localhost/install/index.php   网软分类信息系统是一款基于php+mysql的建站系统.为在各种服务器上架设分类信息以及地方门户网站提供完美的解决方案。 网软分类信息系统整站生成静态,拥有世界一流的用户体验,卓越的访问速度和负载能力。   网软分类信息系统能让你在最短的时间架设一个专业的分类信息/地方门户网站,是一款专注分类信息领域的CMS内容管理系统,能以最低的成本,最少的人力投入,在最短的时间内架设一个功能齐全,性能优异规模庞大并且易于维护的网站平台。 什么是分类信息网? 分类信息网是互联网新兴起的网站类型。如同在网上打小广告。涉及日常生活的方方面面信息资讯。在这些网站里面我们可以获得免费,便利的信息发布服务,包括二手物品交易、二手车买卖、房屋租售、宠物、招聘、兼职、求职、交友活动、生活服务信息。分类信息又称分类广告,我们日常在电视、报刊上所看到的广告,往往是不管你愿不愿意,它都会强加给你,我们称这类广告为被动广告;而人们主动去查询招聘、租房、旅游等方面的信息,对这些信息,我们称它为主动广告。在信息社会逐步发展的今天,被动广告越来越引起人们的反感,而主动广告却受到人们的广泛青睐。几乎每个地方的晚报、日报、生活娱乐报都少不了分类信息的身影,而且办得越好的报纸,分类信息的篇幅往往越大。由此就产生了分类信息网。 谁适合使用分类信息网? 想建立一个地区平台或行业平台的分类信息网站,让更多的人在自己的网站上注册会员在线发布信息,在线申请开设店铺发布信息和商品,或者想拥有58同城网,赶集网,百姓网式的平台分类信息网站的人。 特色功能: 1、在线支付:整合在线支付接口如支付宝,财付通,网银支付接口。 2、整合论坛:整合discuz X论坛,整合phpwind论坛(业界独家整合,双向同步)。 3、查看联系方式收费:可设置查看信息的联系方式收费,以及扣除的金币数量。 4、整合QQ登录:整合QQ应用登录。 5、手机访问:新增手机登录访问模块,支持手机浏览发布信息。 6、商家自定义banner背景图:商家自定义修改上传店铺背景banner图片。 7、会员注册积分推广:通过点击会员推广链接,可给该会员增加积分。 8、会员注册,发布信息IP及地域限制:可限制注册会员及发布信息所在地。 9、自定义信息字段模型:各栏目类别分类信息模型选项字段完全自定义。 10、SEO优化:站务,信息,新闻,店铺,商家黄页 可设置不同的路径显示方式,包括静态,伪静态,动态。 11、自助置顶:分类信息可限时分类置顶以及首页置顶,并扣除相应金币,会员可自行操作,扣除的金币数也可在后台设置。 12、地图标注:整合地图标注接口设置(包括 baidu,51ditu,google地图)。 13、广告管理:后台可以设置漂浮广告,对联广告以及横幅广告,并且可设置不同页面显示不同的广告。 14、告别注册机:验证码可设置中文验证码,数字求和,颜色,英文数字自由搭配的选择设置,以及图案干扰背景设置 (设置干扰点数值,干扰线数值),可限制单个地区或IP发贴限制,更改信息发布文件名以及会员注册文件名,验证问答设置等等功能彻底摆脱注册机的困扰 。 15、自助刷新,套红,加粗信息标题:会员可自行对发布的信息进行标题套红,加粗,以及刷新操作,扣除相应金币。 16、地方门户:通过启用新闻,优惠券,团购等插件,可将系统延伸为地方门户系统。 17、多城市版本:支持多城市间自由切换,不同城市可采用独立二级域名,系统根据浏览者IP自动跳转所在城市,分站有独立的广告管理,每个分站可设置独立管理员,分站拥有独立的SEO优化设置可设置不同的关键词描述。 18、分站管理员:系统总管理员可以给不同分站设置不同的管理员,可实现地方性站长加盟,单独管理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值