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

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

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

瀏覽:205日期: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://m.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://m.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久久,三上悠亚国产精品一区二区三区
久久亚洲国产| 日韩综合精品| 蜜臀av在线播放一区二区三区| 在线成人动漫av| 伊人久久国产| 国产乱码精品| 免费精品国产| 日韩成人精品一区| 欧美激情福利| 国产日韩在线观看视频| 欧美午夜精彩| 中文字幕在线视频久| 日韩国产在线一| 亚洲一二av| 久久免费黄色| 成人日韩在线| 色一区二区三区| 久久gogo国模啪啪裸体| 国产欧美日韩精品高清二区综合区| 蜜臀久久99精品久久久画质超高清| 九色porny丨国产首页在线| 九九久久国产| 精品一区二区三区亚洲| 久久爱www成人| 国产一区一一区高清不卡| 美腿丝袜亚洲三区| 精品视频91| 99久久婷婷| 亚洲在线网站| 一区在线免费观看| 在线国产日韩| 久久国产精品色av免费看| 国产日韩欧美一区二区三区在线观看| 日韩毛片网站| 美女国产一区二区三区| 国产成人精品三级高清久久91 | 亚洲欧美日韩专区| 女同性一区二区三区人了人一| 欧美日韩一二| 免费看日韩精品| 91久久午夜| 国产传媒在线观看| 97se综合| 免费欧美日韩| 欧美激情日韩| 亚洲精品一区二区妖精| 国产日韩一区| 日本精品在线中文字幕| 亚洲伊人精品酒店| 免费在线观看一区| 欧美日韩四区| 精品视频一区二区三区四区五区| 国产99精品| 国产精品亚洲综合色区韩国| 欧美一区二区三区高清视频| 综合国产精品| 久久久久久美女精品| 伊人精品久久| 久久精品国内一区二区三区水蜜桃| 综合五月婷婷| 日韩午夜在线| 91精品国产成人观看| 你懂的国产精品| 午夜精品福利影院| 在线一区电影| 日韩国产欧美一区二区三区| 久久久久久一区二区| 欧美在线黄色| 亚洲理论在线| 中文欧美日韩| 久久久久蜜桃| 一区二区三区四区日本视频| 日韩高清在线观看一区二区| 99国产精品一区二区| 久久久久久色 | 香蕉人人精品| 欧美香蕉视频| 日韩欧美在线中字| 一区二区三区四区日本视频| 日本综合精品一区| av不卡在线| 91精品观看| 99日韩精品| 久久精品国产99久久| 国产精品专区免费| 日韩欧美一区二区三区免费看| 精品国产美女a久久9999| 国产精品成人自拍| 美女尤物国产一区| 国产一区二区三区亚洲综合| 精品一区二区三区视频在线播放| 久久99久久久精品欧美| 日韩国产成人精品| 国产精品tv| 麻豆视频在线观看免费网站黄| 中文在线а√天堂| 午夜精品成人av| 欧美日韩第一| 午夜亚洲一区| 日韩成人在线看| 麻豆国产精品| 美女网站视频一区| 国产视频一区欧美| 欧美午夜三级| 日韩欧美一区二区三区免费看| 香蕉精品久久| 亚洲精品少妇| 在线精品亚洲欧美日韩国产| 欧美性感美女一区二区| 亚洲人成亚洲精品| 国产一区二区三区日韩精品| 999精品在线| 国产精品最新自拍| 日韩中文欧美| 日本一不卡视频| 久久伊人国产| 亚洲一区免费| 亚洲理论在线| 国产欧美88| 91精品99| 国产伊人久久| 日韩在线黄色| 不卡在线一区二区| 精品三级av| 亚洲91网站| 日韩视频在线一区二区三区 | 在线视频精品| 久久都是精品| 婷婷综合社区| 狠狠色狠狠色综合日日tαg| 婷婷激情图片久久| 亚洲女同一区| 亚洲一区有码| 青草av.久久免费一区| 欧美欧美黄在线二区| 国产精品久久久一区二区| 国产精品久久久久av蜜臀 | 亚洲无线一线二线三线区别av| 国产一区二区三区探花| 国产一区二区三区网| 日韩大片在线| 午夜免费一区| 日韩精品视频一区二区三区| 欧美天堂在线| 精品久久视频| 婷婷成人在线| 日韩中文字幕视频网| 精品美女在线视频| 欧美jjzz| 亚洲一级二级| 伊人国产精品| 久久99久久久精品欧美| 欧美日韩一二| 国产精品中文字幕亚洲欧美 | 国精品产品一区| 日韩精品中文字幕吗一区二区 | 狠狠色狠狠色综合日日tαg| 视频一区在线播放| 国产精品久久久一区二区| 91精品精品| 国产香蕉精品| 欧美特黄一级大片| 国产精品中文字幕亚洲欧美| 国产精品免费大片| 九九久久电影| 久久三级毛片| 日韩影院精彩在线| 国产一区不卡| 亚洲天堂免费| 欧美日韩一二三四| 国产一区二区三区网| 中文字幕视频精品一区二区三区| av最新在线| 久久不见久久见国语| 免费在线欧美视频| 久久91导航| 欧美激情三区| 国产欧美日韩精品一区二区免费 | 电影亚洲精品噜噜在线观看| 欧美日一区二区三区在线观看国产免| 91精品韩国| 久久亚洲黄色| 亚洲欧美网站在线观看| 国产一区日韩一区| 久久精品国产一区二区| 国产手机视频一区二区| 中国字幕a在线看韩国电影| 国产精品多人| 精品一区二区三区中文字幕视频 | 天堂成人国产精品一区| 日韩国产综合| 国模大尺度视频一区二区| 国产精品久久久久毛片大屁完整版 | 免费在线观看日韩欧美| 激情婷婷久久| 日韩av二区| 中文字幕亚洲精品乱码| 欧美好骚综合网| 国产va免费精品观看精品视频| 黄色欧美在线|