初学递归,接触无限分类,小小的尝试
2014-10-29 00:00
197 查看
摘要: 还没太熟悉,必须坚持!
今日学习的是无限循环,这与递归有关。其实我自己还不是完全熟悉和上手,还需要琢磨琢磨。
初步学习递归,算是无限分类的一个小练习。
**
表:cate
id int auto 自动递增
pid int 0为最大的分类
catename varchar 分类名称
**
读取数据库的cate表分类如下:
//分类练习
include '../include.php';
运行效果:
输入分类:
<html>
<meta http-equiv="content-type" content="text/html" charset="utf8">
<head>
<title>添加分类</title>
</head>
<body>
<h1 align="center">添加分类</h1>
<hr>
<form method="post" action="cate.php">
<table width="600" align="center" border="0" cellpadding="0" cellspacing="1" >
<tr>
<td width="80">请输入分类</td>
<td width="40"><input type="text" name="catename" size="20"></td>
<td width="50">分类id</td>
<td width="30"><input type="text" name="pid"></td>
<td><input type="submit" name="sub" value="提交"></td>
</tr>
<?php
}
echo '</table>
</form>
</body>
</html>';
// 实时表到这里结束
//填写分类名称catename,pid
if(isset($_POST['sub'])){
$catename = $_POST['catename'];
$pid = $_POST['pid'];
$table = 'cate';
if(empty($catename))
{
echo "分类名不能为空哦";
}else{
cate($table,$catename,$pid);//调用 sql.func.php中的cate分类函数
}
}
?>
运行效果:
今日学习的是无限循环,这与递归有关。其实我自己还不是完全熟悉和上手,还需要琢磨琢磨。
初步学习递归,算是无限分类的一个小练习。
**
表:cate
id int auto 自动递增
pid int 0为最大的分类
catename varchar 分类名称
**
读取数据库的cate表分类如下:
//分类练习
include '../include.php';
function getList($pid=0,&$result=array(),$spac=0) { $spac = $spac + 4; $sql = "SELECT * FROM cate where pid='$pid' "; $query = mysql_query($sql); //获取数组,传入$result while($row = mysql_fetch_assoc($query)) { $row['catename'] = str_repeat(' ', $spac).'|--'.$row['catename']; $result[] = $row; //递归就是调用自己本身 getList($row['id'],$result,$spac); } return $result; } //封装 function display($pid=0) { $rs = getList($pid); $str = '<select name="cate">'; foreach ($rs as $key => $value) { $str .="<option>{$value['catename']}</option>"; } return $str .="</select>"; } echo display();
运行效果:
输入分类:
<html>
<meta http-equiv="content-type" content="text/html" charset="utf8">
<head>
<title>添加分类</title>
</head>
<body>
<h1 align="center">添加分类</h1>
<hr>
<form method="post" action="cate.php">
<table width="600" align="center" border="0" cellpadding="0" cellspacing="1" >
<tr>
<td width="80">请输入分类</td>
<td width="40"><input type="text" name="catename" size="20"></td>
<td width="50">分类id</td>
<td width="30"><input type="text" name="pid"></td>
<td><input type="submit" name="sub" value="提交"></td>
</tr>
</table> <!-- 方便自己查看做的实时表查看分类 --> <table align="center" border="1"> <h1 align="center">现有信息表</h1> <hr> <?php while($res = mysql_fetch_array($query)) { ?> <tr> <td>id:</td> <td><?php echo $res['id']; ?></td> <td>分类名称</td> <td><?php echo $res['catename']; ?></td> <td>pid:</td> <td><?php echo $res['pid']; ?></td> <br> </tr>
<?php
}
echo '</table>
</form>
</body>
</html>';
// 实时表到这里结束
//填写分类名称catename,pid
if(isset($_POST['sub'])){
$catename = $_POST['catename'];
$pid = $_POST['pid'];
$table = 'cate';
if(empty($catename))
{
echo "分类名不能为空哦";
}else{
cate($table,$catename,$pid);//调用 sql.func.php中的cate分类函数
}
}
?>
运行效果:
相关文章推荐
- php实现无限级分类(递归方法)
- PHP 无限分类三种方式,非函数的递归调用![兄弟连]
- PHP 无限分类三种方式,非函数的递归调用!
- “递归”之无限分类处理(一)
- 利用php递归实现无限分类 格式化数组的详解
- php 简单实现无限递归分类
- laravel 使用递归实现无限分类
- php 无限分类(非递归)
- ASP.net 2005 Treeview 无限分类非地递归终极解决方案
- php递归实现无限级分类
- php下利用递归实现无限级分类
- (无限级、递归)DropDownList显示树形分类
- PHP递归实现无限级分类
- PHP迭代与递归实现无限级分类
- PHP不使用递归的无限级分类简单实例
- php递归实现无限分类生成下拉列表
- 无限级分类的非递归实现(存储过程版)
- php中递归无限分类之-通过子栏目查找父栏目
- PHP迭代与递归实现无限级分类