首頁 > 後端開發 > php教程 > php无限分类使用concat如何实现_PHP

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-05-29 11:48:04
原創
987 人瀏覽過

一、数据库设计

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

-- 

-- 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, '0-1', 'Apache服务器');

INSERT INTO `category` VALUES (4, '0-1', 'MySQL数据库');

INSERT INTO `category` VALUES (5, '0-1', 'PHP脚本语言');

INSERT INTO `category` VALUES (6, '0-1-2', 'Linux 系统教程');

INSERT INTO `category` VALUES (7, '0-1-2', 'Linux 网络技术');

INSERT INTO `category` VALUES (8, '0-1-2', '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代码实现

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

<&#63;

$conn = 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'] . '<br>';*/

    

  //第二种展示方法

  $space = str_repeat ( '    ', count ( explode ( '-', $row ['abspath'] ) ) - 1 );

  $option .= '<option value="' . $row ['id'] . '">' . $space . $row ['name'] . '</option>';

}

echo '<select name="opt">' . $option . '</select>';

&#63;>

登入後複製

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

1

2

select concat('颜','培','攀')

select `id`,`name`,concat(`id`,'-',`name`) as iname

登入後複製

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

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板