test2.htm
<html>
<head>
<title>巢状循环测试</title>
</head>
<body>
<{section name=sec1 loop=$row_array}>
<table width="322" border="1" align="center" cellpadding="3" cellspacing="0">
<tr>
<td colspan="2"><{$row_array[sec1].cat_id}></td>
</tr>
<{section name=sec2 loop=$row_array[sec1].post}>
<tr>
<td width="160">post_title:<{$row_array[sec1].post[sec2].post_title}> </td>
<td width="160">post_date:<{$row_array[sec1].post[sec2].post_date}></td>
</tr>
<{/section}>
</table>
<{/section}>
</body>
</html>
test2.php
<?php
require_once('./include/db_fns.php');
include_once("./Smarty/libs/Smarty.class.php"); //包含Smarty类文件
$smarty = new Smarty(); //建立Smarty实例对象$Smarty
$smarty->template_dir = "./templates/dedecms";//设置模板目录
$smarty->compile_dir = "templates/templates_c"; //设置编译目录
$smarty->assign("template_url", "./");
$smarty->assign("$site_url", "http://www.gotop.net.ru");
$smarty->assign("$site_name", "文章管理系统");
$smarty->left_delimiter = "<{"; //设置左边界符
$smarty->right_delimiter = "}>"; //设置右边界符
$db_conn = db_connect();
$query = "SELECT cat_id,cat_name FROM categories ORDER BY cat_ID DESC";
$result = mysql_query($query);
while($row = mysql_fetch_array($result))
{
$query2="SELECT post_id, post_title, post_date
FROM post
WHERE post.post_category =$row[cat_id]
AND post_status <> 'unpublish'
ORDER BY post_date DESC LIMIT 5"; //这里加一个 LIMIT 5 不要用什么$i来控制
$result2=mysql_query($query2);
while($row2 = mysql_fetch_array($result2))
{
$post[]=array('post_id'=>$row2['post_id'],
'post_title'=>$row2['post_title'],
'post_date'=>date('m-d',strtotime($row2[post_date]))
);
}
$row_array[] = array('cat_id'=>$row['cat_id'],
'cat_name'=>$row['cat_name'],
'post'=>$post
);
unset($post);
//$post[]在使用完后要注销,因为使用赋值语句对$post进行赋值时不会
//将它清空,而是将新数组作为它的一个元素增加,为了不产生副作用,这里使用unset()是必需的.
//如果不注销,第二次循环的结果会包含第一循环的数据,如分类2的文章跑到分类1中来。
}
echo"</br>row_array数组:</br>";
print_r($row_array);//打出来看看有没有数据
$smarty->assign("row_array", $row_array);
$smarty->display("test2.htm");
?>
<select>
<option value="0">选择地区</option>
{section name=sec loop=$quyu}
<option value="{$quyu[sec].id}">{$quyu[sec].name}</option>
{foreach name=fenqu item=item from=$quyu[sec].fenqu}
<option value="{$item.id}">{$item.name}</option>
{/foreach}
{/section}
</select>
弄了很久才自己弄出来了,这个东西以后还是要经常使用的-_-||
[quyu] => Array
(
[0] => Array
(
[0] => 1
[id] => 1
[1] => 西湖区
[name] => 西湖区
[fenqu] => Array
(
[0] => Array
(
[0] => 1
[id] => 1
[1] => 西湖城区沿线
[name] => 西湖城区沿线
)
[1] => Array
(
[0] => 2
[id] => 2
[1] => 西湖景区
[name] => 西湖景区
)
)
)
[1] => Array
(
[0] => 2
[id] => 2
[1] => 上城区
[name] => 上城区
[fenqu] => Array
(
[0] => Array
(
[0] => 7
[id] => 7
[1] => 吴山广场/河坊街
[name] => 吴山广场/河坊街
)
[1] => Array
(
[0] => 8
[id] => 8
[1] => 解放路沿线
[name] => 解放路沿线
)
[2] => Array
(
[0] => 9
[id] => 9
[1] => 清泰街沿线
[name] => 清泰街沿线
)
[3] => Array
(
[0] => 10
[id] => 10
[1] => 湖滨路/平海路
[name] => 湖滨路/平海路
)
[4] => Array
(
[0] => 11
[id] => 11
[1] => 江城路沿线
[name] => 江城路沿线
)
)
)
[2] => Array
(
[0] => 3
[id] => 3
[1] => 下城区
[name] => 下城区
[fenqu] => Array
(
[0] => Array
(
[0] => 12
[id] => 12
[1] => 武林广场/杭百
[name] => 武林广场/杭百
)
[1] => Array
(
[0] => 13
[id] => 13
[1] => 凤起路沿线
[name] => 凤起路沿线
)
[2] => Array
(
[0] => 14
[id] => 14
[1] => 朝晖地区
[name] => 朝晖地区
)
[3] => Array
(
[0] => 15
[id] => 15
[1] => 庆春路沿线
[name] => 庆春路沿线
)
)
)
[3] => Array
(
[0] => 4
[id] => 4
[1] => 拱墅区
[name] => 拱墅区
[fenqu] => Array
(
[0] => Array
(
[0] => 16
[id] => 16
[1] => 信义坊
[name] => 信义坊
)
)
)
[4] => Array
(
[0] => 5
[id] => 5
[1] => 江干区
[name] => 江干区
[fenqu] => Array
(
[0] => Array
(
[0] => 17
[id] => 17
[1] => 城东
[name] => 城东
)
)
)
[5] => Array
(
[0] => 6
[id] => 6
[1] => 滨江区
[name] => 滨江区
[fenqu] => Array
(
)
)
[6] => Array
(
[0] => 7
[id] => 7
[1] => 近郊
[name] => 近郊
[fenqu] => Array
(
[0] => Array
(
[0] => 18
[id] => 18
[1] => 萧山
[name] => 萧山
)
)
)
)
)