php学习 5 无限级分类
sql代码
-- phpMyAdmin SQL Dump -- version 2.11.6 -- http://www.phpmyadmin.net -- -- 主机: localhost -- 生成日期: 2011 年 06 月 18 日 16:49 -- 服务器版本: 5.0.51 -- PHP 版本: 5.2.6 SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; -- -- 数据库: `feng` -- -- -------------------------------------------------------- -- -- 表的结构 `fsl_class` -- CREATE TABLE `fsl_class` ( `id` int(5) NOT NULL auto_increment, `catPath` varchar(100) collate utf8_unicode_ci NOT NULL, `title` varchar(100) collate utf8_unicode_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=8 ; -- -- 导出表中的数据 `fsl_class` -- INSERT INTO `fsl_class` (`id`, `catPath`, `title`) VALUES (1, '0', '网站首页'), (2, '0-1', 'linuxos'), (3, '0-1', 'apache'), (4, '0-1', 'mysql'), (5, '0-1', 'php'), (6, '0-1-2', 'linux系统'), (7, '0-1-2', 'linux网络');
php页面代码
<?php
$f_host="localhost";
$f_user="root";
$f_pass="";
$f_db="feng";
$mysqli=new mysqli($f_host,$f_user,$f_pass,$f_db);
if(mysqli_connect_errno()){
printf("数据库连接失败",mysqli_connect_errno());
exit();
}
/*str_repeat() 函数把字符串重复指定的次数。
str_repeat(string,repeat)
参数 描述
string 必需。规定要重复的字符串。
repeat 必需。规定字符串将被重复的次数。必须大于等于 0。*/
$mysqli=new mysqli($f_host,$f_user,$f_pass,$f_db);
$result=$mysqli->query("select id,concat(catPath,'-',id) as absPath,title from fsl_class order by absPath,id");
$record=array();
while($row=$result->fetch_assoc()){
$record[]=$row;
}
$result=$mysqli->query("select id,concat(catPath,'-',id) as absPath,title from fsl_class order by absPath,id");
echo '<form action="" method="post">';
echo '<select class="text-box" name="ft" id="">';
while($row=$result->fetch_assoc()){
$space=str_repeat(' ',count(explode('-',$row['absPath']))-1);
$space.=$row["title"];
//echo '<option value="'.$row["id"].'">'.$row["title"].'</option>';
//echo '</select>';
echo '<option value="'.$row["id"]."|".$row["title"].'">'.$space.'</option>';
//echo $space.$row["title"]."<br>";
}
echo '</seclt>';
echo '<input type="submit" valut="ok">';
echo '</form>';
$result->close();
$mysqli->close();
$v_arr=explode("|",$_POST["ft"]);
echo $v_arr[0]."<br>";
echo $v_arr[1]."<br>";
?>
推荐.NET配套的通用数据层ORM框架:CYQ.Data 通用数据层框架