日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

php+mysql實現的無限分類方法類定義與使用示例

瀏覽:201日期:2022-09-10 10:28:09

本文實例講述了php+mysql實現的無限分類方法類定義與使用。分享給大家供大家參考,具體如下:

創建數據庫以及表

CREATE DATABASE `sortclass`DEFAULT CHARSET utf8; CREATE TABLE IF NOT EXISTS `class` ( `cid` mediumint(8) unsigned NOT NULL auto_increment, `pid` mediumint(8) unsigned NOT NULL, `cname` varchar(50) NOT NULL, PRIMARY KEY (`cid`), KEY `pid` (`pid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

header('Content-type: text/html; charset=utf-8');//連接數據庫$link = mysql_connect(’localhost’,’root’,’eric’) or die(mysql_error());mysql_select_db(’sortclass’,$link);//無限分類類庫class SortClass{ var $data = array(); var $child = array(-1=>array()); var $layer = array(-1=>-1); var $parent = array(); var $link; var $table; function SortClass($link, $table){ $this->setNode(0, -1, ’頂極節點’); $this->link = $link; $this->table = $table; $node = array(); $results = mysql_query(’select * from ’.$this->table.’’,$this->link); while($node = mysql_fetch_assoc($results)){ $this->setNode($node[’cid’],$node[’pid’],$node[’cname’]); } } function setNode ($id, $parent, $value){ $parent = $parent?$parent:0; $this->data[$id] = $value; $this->child[$id] = array(); $this->child[$parent][] = $id; $this->parent[$id] = $parent; $this->layer[$id] = !isset($this->layer[$parent])? 0 : $this->layer[$parent] + 1; } function getList (&$tree, $root= 0){ foreach ($this->child[$root] as $key=>$id){ $tree[] = $id; if ($this->child[$id]) $this->getList($tree, $id); } } function getValue ($id){return $this->data[$id];} function getLayer ($id, $space = false){ return $space?str_repeat($space, $this->layer[$id]):$this->layer[$id]; } function getParent ($id){return $this->parent[$id];} function getParents ($id){ while ($this->parent[$id] != -1){ $id = $parent[$this->layer[$id]] = $this->parent[$id]; } ksort($parent); reset($parent); return $parent; } function getChild ($id){return $this->child[$id];} function getChilds ($id = 0){ $child = array($id); $this->getList($child, $id); return $child; } function addNode($name,$pid){ mysql_query('insert into $this->table (`pid`,`cname`) values (’$pid’,’$name’)',$this->link); } function modNode($cid, $newName){ mysql_query('update $this->table set `cname`=’$newName’ where `cid` = $cid',$this->link); } function delNode($cid){ $allChilds = $this->getChilds($cid); $sql =’’; if(empty($allChilds)){ $sql = 'delete from $this->table where `cid` = $cid'; }else{ $sql = ’delete from ’.$this->table.’ where `cid` in (’.implode(’,’,$allChilds).’,’.$cid.’)’; } mysql_query($sql,$this->link); } function moveNode($cid, $topid){ mysql_query('update $this->table set `pid`=$topid where `cid` = $cid', $this->link); }}//函數function back(){ echo ’<script language='JavaScript'>window.location.href='http://www.b3g6.com/bcjs/test.php?' rel='external nofollow' +new Date().getTime();</script>’; exit;}//聲成selectfunction makeSelect($array,$formName){ global $tree; $select = ’<select name='’.$formName.’'>’; foreach ($array as $id){ $select.=’<option value='’.$id.’'>’.$tree->getLayer($id, ’|-’).$tree->getValue($id).'</option>'; } return $select.’</select>’;}$tree = new SortClass($link,’`class`’);$op = !empty($_POST[’op’]) ? $_POST[’op’] : $_GET[’op’];if(!empty($op)){ if($op==’add’){ $tree->addNode($_POST[’cname’],$_POST[’pid’]); back(); } if($op==’mod’){ $tree->modNode($_POST[’cid’],$_POST[’cname’]); back(); } if($op==’del’){ $tree->delNode($_GET[’cid’]); back(); } if($op==’move’){ $tree->moveNode($_POST[’who’],$_POST[’to’]); back(); }}$category = $tree->getChilds();?> <style type='text/css'> body{font-size:12px;} ul{list-style:none;} a{cursor:pointer;} </style> <script language='javascript'> function $(e){return document.getElementById(e);} function mod(cid){ $(’cid’).value=cid; $(’op’).value=’mod’; $(’name’).style.border=’1px solid red’; } </script> <form action='test.php' method='post'> 名稱:<input type='text' name='cname' /> 添加到:<?=makeSelect($category,’pid’)?><br /> <input type='hidden' name='op' value='add' /> <input type='hidden' name='cid' /> <input type='submit' value='Submit' /> </form> <h3>移動分類</h3> <form action='test.php' method='post'> <?=makeSelect($category,’who’)?>移動到:<?=makeSelect($category,’to’)?> <input type='hidden' name='op' value='move' /> <input type='submit' value='Submit' /> </form> <ul><?phpforeach ($category as $id){ echo ’<li>’.$tree->getLayer($id, ’|- ’).$tree->getValue($id).’ <a href='http://www.b3g6.com/bcjs/test.php?op=del&cid=’.$id.’' rel='external nofollow' >Del</a> <a onclick='mod(’.$id.’)'>Edit</a> </li>’;}?></ul>

更多關于PHP相關內容感興趣的讀者可查看本站專題:《php+mysql數據庫操作入門教程》、《php+mysqli數據庫程序設計技巧總結》、《php面向對象程序設計入門教程》、《PHP數組(Array)操作技巧大全》、《php字符串(string)用法總結》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

標簽: PHP
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美一级二级三级视频| 久草精品视频| 国产a久久精品一区二区三区| 国产一级成人av| 亚洲理论在线| 99久久九九| 亚洲丝袜啪啪| 国产伦理久久久久久妇女| 午夜国产欧美理论在线播放| 亚洲国产专区| 欧美日韩一区二区综合| 黄色日韩精品| 日韩精品午夜视频| 成人日韩精品| 日韩1区2区日韩1区2区| 在线天堂中文资源最新版| 97视频热人人精品免费| 国产精品一区二区三区美女| 日韩黄色免费网站| 国产精品黄网站| 国产一区二区三区四区五区| 色88888久久久久久影院| 精品一区二区三区中文字幕| 久久成人精品| 久久69成人| 蜜桃国内精品久久久久软件9| 99久久99视频只有精品 | 青草综合视频| 欧美在线综合| 男女精品网站| 免费一区二区视频| 国产女优一区| 久久福利一区| 亚洲精品进入| 亚洲精品乱码| 久久精品影视| 欧美综合社区国产| 日韩欧美一区二区三区免费看| 欧美丝袜一区| 天堂久久av| 在线亚洲自拍| 伊人精品一区| 亚洲v天堂v手机在线| 日韩一区中文| 精品亚洲a∨一区二区三区18| 国产99精品| 国产精品magnet| 模特精品在线| 久久久久久久久99精品大| 日韩精品视频中文字幕| 亚洲日产国产精品| 欧美日韩激情| 国产一区91| 97在线精品| 老色鬼精品视频在线观看播放| 中文字幕一区二区三区在线视频| 国产亚洲精品久久久久婷婷瑜伽| 久久精品伊人| 亚洲电影有码| 青草国产精品| 免费精品视频在线| 综合干狼人综合首页| 丝袜a∨在线一区二区三区不卡| 亚洲精品九九| 麻豆久久久久久久| 91精品精品| 日韩中文字幕区一区有砖一区 | 视频福利一区| 欧美片第1页综合| 2023国产精品久久久精品双| 国产精品白丝一区二区三区| 久久男女视频| 国产欧美日韩一区二区三区四区| 蜜桃视频第一区免费观看| 国产偷自视频区视频一区二区| 亚洲一区资源| 影视先锋久久| 激情视频一区二区三区| 私拍精品福利视频在线一区| 一区二区三区午夜视频| 亚洲精品动态| 蜜桃精品在线| 久久wwww| 亚洲图片久久| 亚洲大片在线| 亚洲69av| 亚洲免费高清| 98精品久久久久久久| japanese国产精品| 日韩国产精品久久久| 美女视频一区在线观看| 99成人超碰| 亚洲影院天堂中文av色| 日韩综合一区| 日本免费在线视频不卡一不卡二| 精品亚洲成人| 亚洲电影有码| 国产综合精品| 久久亚洲风情| 日韩欧美高清一区二区三区| 日韩高清中文字幕一区| 国产精品片aa在线观看| 亚洲夜间福利| 久久国产免费看| 久久99久久久精品欧美| 免费日韩av片| 日韩动漫一区| 欧美日韩四区| 欧美交a欧美精品喷水| 久久国产88| 久久三级中文| 国产精选一区| 伊人久久成人| 久久在线视频免费观看| 国产videos久久| 日韩精品中文字幕吗一区二区| 久久要要av| 国产精品原创| 免费一二一二在线视频| 日韩一区网站| 日韩欧美中文在线观看| 久久久9色精品国产一区二区三区| 韩国三级一区| 国产精品久久久久9999高清| 蜜臀av一区二区三区| 麻豆理论在线观看| 国产精品美女久久久久久不卡| 亚洲精品三级| 99在线精品免费视频九九视 | 中文一区一区三区高中清不卡免费| 免费黄网站欧美| 国精品一区二区三区| 老牛国内精品亚洲成av人片| 日本va欧美va精品发布| 伊人久久婷婷| 成人av动漫在线观看| 国产一区福利| 国产香蕉精品| 青青草国产精品亚洲专区无| 亚洲精品一级二级三级| 精品国产a一区二区三区v免费| 久久精品国产www456c0m| 日韩国产专区| 国内亚洲精品| 日韩午夜电影| 日韩精品中文字幕吗一区二区 | 精品久久精品| 香蕉成人av| 在线视频日韩| 亚洲综合欧美| 欧美日一区二区三区在线观看国产免| 国产精品久久免费视频| 久久毛片亚洲| 亚洲黄页一区| 久久国产麻豆精品| 成年男女免费视频网站不卡| 国产精品99一区二区| 亚洲一区二区三区久久久| 日本vs亚洲vs韩国一区三区二区| 国产欧美精品久久| 国产精品福利在线观看播放| 久久国产亚洲| 中文字幕亚洲精品乱码| 老司机精品视频网| 日本高清不卡一区二区三区视频| 日韩视频二区| 欧美精品影院| 国产传媒av在线| 夜夜嗨网站十八久久| 日韩av三区| 蜜桃av.网站在线观看| 日韩视频二区| 国产乱码精品一区二区三区四区| 蜜臀久久精品| 亚洲最大av| 精品入口麻豆88视频| 不卡在线一区| 欧美激情视频一区二区三区免费| 久久久久国产一区二区| 综合亚洲视频| 日韩成人精品一区二区| 国产精品丝袜xxxxxxx| 国产精品videossex| 欧美日韩国产在线一区| 国产欧美日韩精品高清二区综合区 | 免费日韩av片| 久久91视频| 亚洲一区二区免费看| 国产精区一区二区| 欧美午夜精彩| 国产精品亚洲综合久久| 欧美日韩国产高清| 久久97视频| 亚洲天堂日韩在线| 日韩在线第七页| 91精品一区| 制服诱惑一区二区| 国产一二在线播放| 911亚洲精品| 中文在线一区|