php多级分类数据库,php多级分类数据库查询
php多级分类
mysql_query("set character set gb2312");
成都创新互联是一家专注于网站设计、网站建设与策划设计,长清网站建设哪家好?成都创新互联做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:长清等地区。长清做网站价格咨询:13518219792
$sql='select distinct sy from menu order by sy';
$res=mysql_query($sql);
$bysy=array();
while($row = mysql_fetch_row($res)) $bysy[]=$row[0];
mysql_free_result($res);
foreach ($bysy as $m){
echo 'pstrong'.$m.'/strongbr /';
$sql="select distinct name from menu where sy='$m' order by name";
$res=mysql_query($sql);
$bygs=array();
while($row=mysql_fetch_row($res)) $bygs[]=$row[0];
mysql_free_result($res);
foreach($bygs as $n){
echo ' em'.$n.'/embr /';
$sql="select id,title from menu where sy='$m' and name='$n'";
$res=mysql_query($sql);
while($row=mysql_fetch_row($res)){
echo ' a href="news.php?id='.$row[0].'"'.$row[1].'/abr /';
}
mysql_free_result($res);
}
echo '/p';
}
mysql_close();
PHP MYSQL 的多级分类树结构
打开数据库那就不写了。
前几天刚写了一个。你看下
/* 表结构
CREATE TABLE `lh_categroy` (
`id` int(10) NOT NULL auto_increment,
`parentid` int(6) NOT NULL,
`name` varchar(255) NOT NULL,
`keyword` varchar(255) NOT NULL COMMENT '关键字',
`des` varchar(255) NOT NULL COMMENT '描述',
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) ENGINE=MyISAM AUTO_INCREMENT=44 DEFAULT CHARSET=utf8;
*/
/**
* 获得所有栏目排序后的列表
* @return array
*/
function getAllOrderColumns($id = 0) {
global $columns;
$result = array();
if ($id) $result[$id] = $columns[$id];
foreach ($columns as $column) {
if ($column['parentid'] == $id) {
$column['level'] = 0;
$result[$column['id']] = $column;
getColumns($columns, $column['id'], $result, 1);
}
}
return $result;
}
function getColumns($columns, $cid, $result, $l = 1) {
foreach ($columns as $c) {
if ($c['parentid'] == $cid) {
$c['level'] = $l;
$result[$c['id']] = $c;
getColumns($columns, $c['id'], $result, $l + 1);
}
}
}
$sql = 'select * from lh_categroy';
$query = mysql_query($sql);
while($row = mysql_fetch_assoc($query)){
$columns[]=$row;
}
$fenlei = '';
$fenlei = 'select name="cid" style="width:200px; height:25px;"
option value="0"请选择分类/option';
foreach(getAllOrderColumns() as $v){
$v[name] = $v[level] ? ($v[level]==1 ? 'nbsp;nbsp;|-'.$v[name]:'nbsp;nbsp;nbsp;|-'.$v[name]) : $v[name];
$fenlei .= "option value='$v[id]'$v[name]/option";
}
$fenlei .= '/select';
echo $fenlei;
在php中有张数据表 如果一个字段的值分多级分类,怎么才能遍历查询出?分开显示到模板?
/**
* 如果出现多级分类且在一张表中, 此时你需要增添字段确定分类间的关系
* 通常做法是在数据表中加一个字段如 'pid', 如果 id == pid 即判定为父子关系
*/
// 如这张表
// 如果需要找出中国下面的分类,只需要找出所有 pid = 1 即可
SELECT * FROM table WHERE pid = 1;
网页题目:php多级分类数据库,php多级分类数据库查询
文章转载:http://azwzsj.com/article/dssiocp.html