//原則: パスを分割して、必要なすべての PID と ID を取得します。パスは、祖先 ID から親 ID までの一連の ID を含む、テーブルの設計時のフィールドです。
$sql="select concat(path,'-',id) as conpath,id,name,path from wx_kind order by conpath";
//explode() 関数について注意すべき点が 1 つあり、分割される文字列にパラメータを使用する文字が含まれているかどうかに関係なく、少なくとも 1 つの要素を含む配列が返されます
while($row=mysql_fetch_assoc($result)){
$id=$row['id'];
$str=str_repeat(' , $num);
echo $ str。$ id。 '=>'。$ row ['name']。 '< hr/>';
display_classify($id,$num+1,$sid);
}
}
//display_classify();
/****************************************************/
以上
関数del_classify($id){
// まず再帰を使用して、その ID または祖先 ID を持つすべてのサブカテゴリを検索し、次に操作を内側から外側に順番に削除します。削除するときは順序に注意してください。
$sql="select id,name from wx_kind where pid={$id}";
$result=mysql_query($sql);
while($row=mysql_fetch_assoc($result)){
$id=$row['id'];
del_classify($id);
}
へ
$sql1="id={$id} の wx_kind から削除";
$result=mysql_query($sql1);
if(!($result && mysql_affected_rows())){
$bool=false;
}その他{
$bool=true;
}
$bool を返す;
}
//del_classify(5);
以下はデータベースコードです:
--
-- データベース: `db_kind`
--
----------------------------------------------- - ----------
--
-- テーブル構造 `wx_kind_dump`
--
テーブル `wx_kind_dump` を作成します (
`id` int(11) NOT NULL auto_increment,
`pid` int(11) NOT NULL,
`name` char(40) NOT NULL,
`path` char(40) NOT NULL,
主キー (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=26;
--
-- テーブル `wx_kind_dump` 内のデータをエクスポートします
--
INSERT INTO `wx_kind_dump` 値 (1, 0, 'ニュース', '0');
INSERT INTO `wx_kind_dump` 値 (2, 0, 'Video', '0');
INSERT INTO `wx_kind_dump` 値 (3, 0, 'picture', '0');
INSERT INTO `wx_kind_dump` VALUES (4, 0, 'Reading', '0');
INSERT INTO `wx_kind_dump` 値 (5, 1, '政治ニュース', '0-1');
INSERT INTO `wx_kind_dump` VALUES (6, 1, 'Financial News', '0-1');
INSERT INTO `wx_kind_dump` VALUES (7, 1, 'Entertainment News', '0-1');
INSERT INTO `wx_kind_dump` VALUES (8, 1, 'スポーツ ニュース', '0-1');
INSERT INTO `wx_kind_dump` VALUES (9, 8, 'バスケットボール', '0-1-8');
INSERT INTO `wx_kind_dump` VALUES (10, 8, 'football', '0-1-8');
INSERT INTO `wx_kind_dump` VALUES (11, 8, 'F1', '0-1-8');
INSERT INTO `wx_kind_dump` VALUES (12, 8, '网球', '0-1-8');
INSERT INTO `wx_kind_dump` VALUES (13, 9, '国际篮球', '0-1-8-9');
INSERT INTO `wx_kind_dump` VALUES (14, 9, 'CBA', '0-1-8-9');
INSERT INTO `wx_kind_dump` VALUES (15, 9, 'CUBA', '0-1-8-9');
INSERT INTO `wx_kind_dump` VALUES (16, 9, 'NBA', '0-1-8-9');
INSERT INTO `wx_kind_dump` VALUES (17, 9, 'NCAA', '0-1-8-9');
INSERT INTO `wx_kind_dump` VALUES (18, 16, '热火', '0-1-8-9-16');
INSERT INTO `wx_kind_dump` VALUES (19, 16, '湖人', '0-1-8-9-16');
INSERT INTO `wx_kind_dump` VALUES (20, 16, '雷霆', '0-1-8-9-16');
INSERT INTO `wx_kind_dump` VALUES (21, 16, '凯尔特人', '0-1-8-9-16');
INSERT INTO `wx_kind_dump` VALUES (22, 18, 'James', '0-1-8-9-16-18');
INSERT INTO `wx_kind_dump` VALUES (23, 18, 'Wade', '0-1-8-9-16-18');
INSERT INTO `wx_kind_dump` VALUES (24, 20, 'KD', '0-1-8-9-16-20');
INSERT INTO `wx_kind_dump` VALUES (25, 20, 'WS', '0-1-8-9-16-20');
http://www.bkjia.com/PHPjc/477826.htmlwww.bkjia.com本当http://www.bkjia.com/PHPjc/477826.html技術記事 PHPコード部分: //無制限分类使用路径 //原則: 路径を通ってすべての希望のpidおよびidを分別し、路径は设计表時の1字段、包含着从祖先...