php无限分类使用concat如何实现

前端之家收集整理的这篇文章主要介绍了php无限分类使用concat如何实现前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

一、数据库设计

sql;"> -- -- Table structure for table `category` --

CREATE TABLE category (
id int(11) NOT NULL auto_increment,catpath varchar(255) default NULL,name varchar(255) default NULL,PRIMARY KEY (id)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=11 ;

--
-- Dumping data for table category

INSERT INTO category VALUES (1,'0','网站首页');
INSERT INTO category VALUES (2,'0-1','Linux OS');
INSERT INTO category VALUES (3,'Apache服务器');
INSERT INTO category VALUES (4,'MysqL数据库');
INSERT INTO category VALUES (5,'PHP脚本语言');
INSERT INTO category VALUES (6,'0-1-2','Linux 系统教程');
INSERT INTO category VALUES (7,'Linux 网络技术');
INSERT INTO category VALUES (8,'Linux 安全基础');
INSERT INTO category VALUES (9,'0-1-2-7','Linux LAMP');
INSERT INTO category VALUES (10,'0-1-3-10','apache Server');

这里说明下,catpath的-链接符号不是固定的,可以选择,;等特殊符号。

二、PHP代码实现

PHP;"> MysqL_connect ( 'localhost','root','root' ); MysqL_select_db ( 'test',$conn ); MysqL_query ( 'set names UTF8' ); $sql = "select id,concat(catpath,'-',id) as abspath,name from category order by abspath"; $query = MysqL_query ( $sql ); while ( $row = MysqL_fetch_array ( $query ) ) { //第一种展示方法 //$space = str_repeat ( '',count ( explode ( '-',$row ['abspath'] ) ) - 1 ); //echo $space . $row ['name'] . '
';*/

//第二种展示方法
$space = str_repeat ( '',$row ['abspath'] ) ) - 1 );
$option .= '<option value="' . $row ['id'] . '">' . $space . $row ['name'] . '';
}
echo '<select name="opt">' . $option . '';
?>

MysqL concat函数可以连接一个或者多个字符串

sql;"> select concat('颜','培','攀') select `id`,`name`,concat(`id`,`name`) as iname

以上就是本文的全部内容,介绍了PHP使用concat实现无线分类,希望对大家的学习有所帮助。

猜你在找的PHP相关文章