Copy CodeThe code is as follows:
/*========================================================
Class Name: Catalog
Function: Unlimited Grading class
Method:
Tree-type Display classification
Catalog_show ($id)//parameter $id recursive invocation
Process: Find parent category 0 All root categories-always recursively get all categories and show
Add Category
Catalog_add ($uid, $name)//$uid Parent ID//$name category name
Process: According to $uid, add a new sub-ID under this ID
Delete Category
Catalog_del ($UID)//parameter $uid number of categories to delete
Modify classification
Catalog_set ($id, $name)//parameter $id the category//parameter to be modified $name the new category name
Variable:
$config//Database information, Host,user,pass,dbname
$catalog _dbname//Classification database name
Database:
CATALOG_ID//classification of natural serial numbers
CATALOG_UID//Classification of the parent category
Catalog_name//Category name
Catalog_path_number//Kinship tree Digital form 0:1:2
Catalog_path_char//kinship tree Character form Category 1: Category 1.1: Category 1.1.1
Refer to Article http://www.phpchina.com/12823/viewspace_4468.html
========================================================*/
Class catalog{
var $config;
var $catalog _dbname;
var $links;
Private Function Connect () {
$this->links = mysql_connect ($this->config[' host '), $this->config[' user '], $this->config[' pass ') or die ("Error: section". __line__. " Yes
". Mysql_error ());
mysql_select_db ($this->config[' dbname '), $this->links);
mysql_query ("SET NAMES gb2312");
}
function catalog_show ($uid = 0) {
$this->connect ();
$sql = "SELECT * from". $this->catalog_dbname. "
Where Catalog_uid = ". $uid. "
OrDER by catalog_id ";
$result = mysql_query ($sql, $this->links) or Die ("Error: section". __line__. " Yes
". Mysql_error ());
if (mysql_num_rows ($result) > 0) {
while ($row = Mysql_fetch_assoc ($result)) {
if ($this->sun_catalog ($row [' catalog_id '])) {//To determine if there are sub-classifications
$cata _img = "";
}else{
$cata _img = "";
}
$path = Explode (":", $row [' Catalog_path_number ']);
if (count ($path) > 1) {
for ($i =1; $i $path _img. = "";
}
}
echo $path _img. $cata _img;
echo "";
echo $row [' catalog_name ']. "
";
$path _img = "";
if ($this->sun_catalog ($row [' catalog_id '])) {
$hidden _div = "style= ' Display:none '";
echo "";
$this->catalog_show ($row [' catalog_id ']);
echo "";
}
}
}
}
Private Function Sun_catalog ($uid) {//To determine if there are sub-categories
$sql = "SELECT * from". $this->catalog_dbname. "
Where Catalog_uid = ". $uid. "
OrDER by catalog_id ";
$result = mysql_query ($sql, $this->links) or Die ("Error: section". __line__. " Yes
". Mysql_error ());
if (mysql_num_rows ($result) > 0) {
return true;
}else{
return false;
}
}
function Catalog_add ($uid, $name) {
Gets the parent ID's affinity tree
$this->connect ();
$sql = "SELECT * from". $this->catalog_dbname. "
Where catalog_id = ' ". $uid." ' ";
$result = mysql_query ($sql, $this->links)
Or Die ("Error: section". __line__. Yes
". Mysql_error ());
$row = Mysql_fetch_assoc ($result);
$fid _path_number = $row The number tree of the [' Catalog_path_number '];//id
$fid _path_char = character affinity tree for $row [' Catalog_path_char '];//id
Insert data Insert line First, and then find the latest inserted ID, in accordance with this ID to modify
$sql = "Insert into". $this->catalog_dbname. " (Catalog_uid,catalog_name)
VALUES (". $uid.", ' ". $name." ') ";
$result = mysql_query ($sql, $this->links)
Or Die ("Error: section". __line__. Yes
". Mysql_error ());
$catalog _id = mysql_insert_id ();//Get your own ID
$catalog _path_number = $fid _path_number. ":" $catalog _id;//get the number of their number relatives
$catalog _path_char = $fid _path_char. ":" $NAME;//Get your own character affinity number
$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)
Or Die ("Error: section". __line__. Yes
". Mysql_error ());
}
function Catalog_del ($id) {
$this->connect ();
$sql = "Delete from". $this->catalog_dbname. "
Where catalog_id = ". $id;
mysql_query ($sql, $this->links)
Or Die ("Error: section". __line__. Yes
". Mysql_error ());
}
function Catalog_set ($id, $name) {
$this->connect ();
$sql = "Update". $this->catalog_dbname. "
SET
Catalog_name = ' ". $name." '
Where
catalog_id = ". $id;
mysql_query ($sql, $this->links)
Or Die ("Error: section". __line__. Yes
". Mysql_error ());
}
}
?>
The above introduces the infinite Pole China limited PHP unlimited pole classification, including the Infinite pole China limited content, I hope that the PHP tutorial interested in a friend helpful.