ASP 无限级分类
我要做一个ASP分类程序,无限级(程序中设定分类是否在前台显示)每个分类下显示自己下面的5分类名子,以及每级分类的数量还有是不是显示的信息+一级栏目+--二级栏目1+--...
我要做一个ASP分类程序,无限级(程序中设定分类是否在前台显示)
每个分类下显示自己 下面的 5分类名子,以及每级分类的数量 还有是不是显示的信息
+一级栏目
+--二级栏目1
+--二级栏目2
+----三级栏目1
+----三级栏目2
+------四级栏目1
+--------五级栏目1
+--------五级栏目2
+------四级栏目2
+一级栏目2
+--二级栏目1-2
+一级栏目3
+--二级栏目1-3
+--二级栏目2-3
+----三级栏目1-2-3
怎么实现呢? 展开
每个分类下显示自己 下面的 5分类名子,以及每级分类的数量 还有是不是显示的信息
+一级栏目
+--二级栏目1
+--二级栏目2
+----三级栏目1
+----三级栏目2
+------四级栏目1
+--------五级栏目1
+--------五级栏目2
+------四级栏目2
+一级栏目2
+--二级栏目1-2
+一级栏目3
+--二级栏目1-3
+--二级栏目2-3
+----三级栏目1-2-3
怎么实现呢? 展开
展开全部
我有一个PHP的,你自己翻译成ASP吧!
/*
'sel_Name 下拉菜单名称
'sel_selected 默认选中值
'iTableName 数据表名
'ifloor 初始层数 - 1
'iTID1 初始父级ID - 0
'sel_valField value值对应的字段名
'sel_TextField text 值对就的字段名
*/
function createSelect($sel_Name, $sel_selected , $iTableName , $ifloor=1, $iTID1=0, $sel_valField = "id",$sel_TextField="title") {
if ($ifloor == 1) {
$selectStr = $selectStr."<select name=\"".$sel_Name."\" id=\"".$sel_Name."\">\n";
}
$ifloorStr = "";
for ($i = 1; $i < $ifloor; $i++) {
$ifloorStr = $ifloorStr." ";
}
$sql = "select * from `$iTableName` where TID1 = ".$iTID1." order by orderid";
$rs = mysql_query($sql);
while ($ary = mysql_fetch_array($rs)) {
$iChecked = "";
if($sel_selected == $ary[$sel_valField]) $iChecked = "selected";
$rs2 = mysql_query("select count(*) from `$iTableName` where TID1 = ".$ary["id"]);
$Vcount = @mysql_result($rs2, 0);
if ($Vcount != 0) {
$selectStr = $selectStr."<optgroup label=\"".$ifloorStr."├".$ary[$sel_TextField]."--(".$ifloor."级)\"></optgroup>\n";
$selectStr = $selectStr.createSelect($sel_Name, $sel_selected, $iTableName, $ifloor + 1, $ary["id"],$sel_valField,$sel_TextField);
}else{
$selectStr = $selectStr."<option value='".$ary[$sel_valField]."' ".$iChecked.">".$ifloorStr."├".$ary[$sel_TextField]."--(".$ifloor."级)</option>\n";
}
}@mysql_free_result($rs);
if ($ifloor == 1) {
$selectStr = $selectStr."</select>\n";
}
return $selectStr;
}
/*
'sel_Name 下拉菜单名称
'sel_selected 默认选中值
'iTableName 数据表名
'ifloor 初始层数 - 1
'iTID1 初始父级ID - 0
'sel_valField value值对应的字段名
'sel_TextField text 值对就的字段名
*/
function createSelect($sel_Name, $sel_selected , $iTableName , $ifloor=1, $iTID1=0, $sel_valField = "id",$sel_TextField="title") {
if ($ifloor == 1) {
$selectStr = $selectStr."<select name=\"".$sel_Name."\" id=\"".$sel_Name."\">\n";
}
$ifloorStr = "";
for ($i = 1; $i < $ifloor; $i++) {
$ifloorStr = $ifloorStr." ";
}
$sql = "select * from `$iTableName` where TID1 = ".$iTID1." order by orderid";
$rs = mysql_query($sql);
while ($ary = mysql_fetch_array($rs)) {
$iChecked = "";
if($sel_selected == $ary[$sel_valField]) $iChecked = "selected";
$rs2 = mysql_query("select count(*) from `$iTableName` where TID1 = ".$ary["id"]);
$Vcount = @mysql_result($rs2, 0);
if ($Vcount != 0) {
$selectStr = $selectStr."<optgroup label=\"".$ifloorStr."├".$ary[$sel_TextField]."--(".$ifloor."级)\"></optgroup>\n";
$selectStr = $selectStr.createSelect($sel_Name, $sel_selected, $iTableName, $ifloor + 1, $ary["id"],$sel_valField,$sel_TextField);
}else{
$selectStr = $selectStr."<option value='".$ary[$sel_valField]."' ".$iChecked.">".$ifloorStr."├".$ary[$sel_TextField]."--(".$ifloor."级)</option>\n";
}
}@mysql_free_result($rs);
if ($ifloor == 1) {
$selectStr = $selectStr."</select>\n";
}
return $selectStr;
}
北京磐安云创科技有限公司_
2023-02-01 广告
2023-02-01 广告
价格只是购买产品或服务过程中的一项指标,如果单纯只比较价格,其实考虑并不是那么周到。价格、质量、服务、口碑、是否合适自己的情况等都需要一起考虑。以上回答如果还觉得不够详细,可以来咨询下北京磐安公司。北京磐安公司是一家专业从事高新软件的技术公...
点击进入详情页
本回答由北京磐安云创科技有限公司_提供
展开全部
你可以做选项,如果选择以及栏目的话 需要添加几次 二级栏目。
把这个次数,传值给for 里面 这样 在里面 循环添加就行了
把这个次数,传值给for 里面 这样 在里面 循环添加就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
自表调用,就可以达到
数据库
Forum表
id 栏目ID
forumName 栏目名称
forumParent 上级栏目
这个是最简单的自表调用无限级分类表
然后前台调用用递归的方法
如果是ASP的话,这么写
sub ListForums(parentID,str)
sql="select * from forum where forumParent="& id
dim rs,i
rs=conn.execute(sql)
if(rs.eof and rs.bof) then
else
i=1
while(not rs.eof)
%>+<%=str&rs("forum_name")&i%><br /><%
rs.movenext
i=i+1
call ListForum(rs(0),"-")
wend
end if
rs.close
set rs=nothing
end sub
数据库
Forum表
id 栏目ID
forumName 栏目名称
forumParent 上级栏目
这个是最简单的自表调用无限级分类表
然后前台调用用递归的方法
如果是ASP的话,这么写
sub ListForums(parentID,str)
sql="select * from forum where forumParent="& id
dim rs,i
rs=conn.execute(sql)
if(rs.eof and rs.bof) then
else
i=1
while(not rs.eof)
%>+<%=str&rs("forum_name")&i%><br /><%
rs.movenext
i=i+1
call ListForum(rs(0),"-")
wend
end if
rs.close
set rs=nothing
end sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我的百度空间里有源码,请参考(asp+access)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询