时间:2021-05-26
复制代码 代码如下:
<?php
classcatalog{
var$config;
var$catalog_dbname;
var$links;
privatefunctionconnect(){
$this->links=mysql_connect($this->config['host'],$this->config['user'],$this->config['pass'])ordie("错误:第".__LINE__."行<br>".mysql_error());
mysql_select_db($this->config['dbname'],$this->links);
mysql_query("SETNAMESgb2312");
}
functioncatalog_show($uid=0){
$this->connect();
$sql="Select*FROM".$this->catalog_dbname."
Wherecatalog_uid=".$uid."
orDERBYcatalog_id";
$result=mysql_query($sql,$this->links)ordie("错误:第".__LINE__."行<br>".mysql_error());
if(mysql_num_rows($result)>0){
while($row=mysql_fetch_assoc($result)){
if($this->sun_catalog($row['catalog_id'])){//判断有没有子分类
$cata_img="<imgid='img".$row['catalog_id']."'src='./img/last_node.jpg'ōnclick='click_catalog(".$row['catalog_id'].")'/>";
}else{
$cata_img="<imgsrc='./img/sp.jpg'/>";
}
$path=explode(":",$row['catalog_path_number']);
if(count($path)>1){
for($i=1;$i<count($path);$i++){
$path_img.="<imgsrc='./img/sp.jpg'/>";
}
}
echo$path_img.$cata_img;
echo"<aclass='menu'href='javascrīpt:send_id(".$row['catalog_id'].")'>";
echo$row['catalog_name']."</a><br>";
$path_img="";
if($this->sun_catalog($row['catalog_id'])){
$hidden_div="style='display:none'";
echo"<divid='div".$row['catalog_id']."'".$hidden_div.">";
$this->catalog_show($row['catalog_id']);
echo"</div>";
}
}
}
}
privatefunctionsun_catalog($uid){//判断是否有子分类
$sql="Select*FROM".$this->catalog_dbname."
Wherecatalog_uid=".$uid."
orDERBYcatalog_id";
$result=mysql_query($sql,$this->links)ordie("错误:第".__LINE__."行<br>".mysql_error());
if(mysql_num_rows($result)>0){
returntrue;
}else{
returnfalse;
}
}
functioncatalog_add($uid,$name){
//获取父id的亲缘树
$this->connect();
$sql="Select*FROM".$this->catalog_dbname."
Wherecatalog_id='".$uid."'";
$result=mysql_query($sql,$this->links)
ordie("错误:第".__LINE__."行<br>".mysql_error());
$row=mysql_fetch_assoc($result);
$fid_path_number=$row['catalog_path_number'];//id的数字亲缘树
$fid_path_char=$row['catalog_path_char'];//id的字符亲缘树
//插入数据先插入行->再找到最新插入的id,在依据这个id进行修改
$sql="InsertINTO".$this->catalog_dbname."(catalog_uid,catalog_name)
VALUES(".$uid.",'".$name."')";
$result=mysql_query($sql,$this->links)
ordie("错误:第".__LINE__."行<br>".mysql_error());
$catalog_id=mysql_insert_id();//获取自己的id
$catalog_path_number=$fid_path_number.":".$catalog_id;//得到自己的数字亲缘数
$catalog_path_char=$fid_path_char.":".$name;//得到自己的字符亲缘数
$sql="Update'".$this->catalog_dbname."'
SET
catalog_path_number='".$catalog_path_number."',
catalog_path_char='".$catalog_path_char."'
Where
catalog_id=".$catalog_id;
mysql_query($sql,$this->links)
ordie("错误:第".__LINE__."行<br>".mysql_error());
}
functioncatalog_del($id){
$this->connect();
$sql="DeleteFROM".$this->catalog_dbname."
Wherecatalog_id=".$id;
mysql_query($sql,$this->links)
ordie("错误:第".__LINE__."行<br>".mysql_error());
}
functioncatalog_set($id,$name){
$this->connect();
$sql="Update".$this->catalog_dbname."
SET
catalog_name='".$name."'
Where
catalog_id=".$id;
mysql_query($sql,$this->links)
ordie("错误:第".__LINE__."行<br>".mysql_error());
}
}
?>
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了php无限极分类实现方法。分享给大家供大家参考,具体如下:今天给大家带来的是php的无限极分类技术,本人把无限极分类划分为两种。首先我把数据库表给
本文实例讲述了php无限极分类递归排序实现方法。分享给大家供大家参考。具体实现方法如下:复制代码代码如下:functionorder($array,$pid=0
平时开发中或多或少不可避免会遇到无限极分类的问题,因为效率、逻辑等问题也一直使这类问题比较尖锐。今天我们以yii2框架为基础,栏目无限极为例,对这个问题进行一个
今天写了下无限极分类下面就把代码贴上来了写的不怎么样。methodofclassifyone复制代码代码如下:
本文实例讲述了php通过前序遍历树实现无需递归的无限极分类。分享给大家供大家参考。具体如下:大家通常都是使用递归实现无限极分类都知道递归效率很低,下面介绍一种改