求PHP挂库3级下拉列表!QQ号:228944890  跪求大哥大姐了!那位大哥帮我弄一下额!
数据库为一下3级:                                 大类联动  小类联动
产品大类:$sqlc="select * from pro_big_class";      ID
产品小类:$sqlc="select * from pro_small_class";   big_id    ID
产品信息:$sqlc="select * from product_info";      big_id  small_id
一下为我改的2级下拉列表代码:
<script language = "JavaScript">
<!--var onecount1; 
onecount1 = 0; 
subcat1 = new Array();
<?
$count1=0;
$sqlc="select * from pro_small_class"; 
$resultc=$ob->SQL($sqlc);
while($rsc=mysql_fetch_array($resultc))
{
?>
subcat1[<?=$count1;?>] = new Array("<?=$rsc['class_id']?>","<?=$rsc['class_name'];?>");
<?
      $count1++;
}
?>
onecount1=<?=$count1?>; 
function getCity1(provinceId)

      document.myform.small_class.length = 0;       var locationid=provinceId; 
      var i; 
      document.myform.small_class.options[0] = new Option('请选择',''); 
      for (i=0;i<onecount1;i++) 
      { 
          if (subcat1[i][0] == locationid) 
          { 
          document.myform.small_class.options[document.myform.small_class.length] = new Option(subcat1[i][1], subcat1[i][1]);
          } 
      } }var onecount2; 
onecount2 = 0; 
subcat2 = new Array();
<?
$count2=0;
$sqlp="select * from product_info"; 
$resultp=$ob->SQL($sqlp);
while($rsp=mysql_fetch_array($resultp))
{
?>
subcat2[<?=$count2;?>] = new Array("<?=$rsp['small_id']?>","<?=$rsp['name'];?>");
<?
      $count2++;
}
?>
onecount2=<?=$count2?>; 
function getCity2(provinceIds)

      document.myform.pro_info.length = 0;       var locationids=provinceIds; 
      var is; 
  return document.myform.pro_info.options[document.myform.pro_info.length] = new Option(onecount2, onecount2);
      document.myform.pro_info.options[0] = new Option('请选择',''); 
      for (is=0;is<onecount2;is++) 
      { 
          if (subcat2[is][0] == locationids) 
          { 
          document.myform.pro_info.options[document.myform.pro_info.length] = new Option(subcat2[is][1], subcat2[is][1]);
          } 
      } }
//-->
</script>HTML代码:
            </select><select name="big_class" id="big_class" onChange="getCity1(document.myform.big_class.options[document.myform.big_class.selectedIndex].value);">
              <option>请选择</option>
              <?php
$sql="select * from pro_big_class";
$result=$ob->SQL($sql);
while($rs=mysql_fetch_array($result))
{
?>
              <option value="<?=$rs["ID"]?>" <?php if($big_id==$rs["ID"])?>>
              <?=$rs["class_name"]?>
              </option>
              <?php
  }
  ?>
            </select>
--
<select name="small_class" id="small_class" onChange="getCity2(document.myform.small_class.options[document.myform.small_class.selectedIndex].value);">
  <option>请选择</option>
              <?php
$sqls="select * from pro_small_class";
$results=$ob->SQL($sqls);
while($rss=mysql_fetch_array($results))
{
?>
              <option value="<?=$rss["ID"]?>">
              <?=$rss["class_name"]?>
              </option>
              <?php
  }
  ?>  
  </select>
<select name="pro_info" id="pro_info">
  <option>请选择</option></select>

解决方案 »

  1.   

    http://hi.baidu.com/fanglor/blog/item/1ff8fbc22fb3db3ee4dd3be2.html/cmtid/887f2523fa08714aac34dee9
    参考这个例子
      

  2.   

    最最简单,安全,快捷。jquery ajax
      

  3.   

    级联数据,为什么要建这么多表呢?一张够了啊create table cacasecading{
      id_level varchar(200),
      name varchar(200)
    }insert into cacasecading (id_level,name) values ('01','浙江');
    insert into cacasecading (id_level,name) values ('0101','浙江宁波');
    insert into cacasecading (id_level,name) values ('010101','浙江宁波绍兴');
    insert into cacasecading (id_level,name) values ('010102','浙江宁波北仑');
    insert into cacasecading (id_level,name) values ('0102','浙江杭州');
    insert into cacasecading (id_level,name) values ('0103','舟山');
    insert into cacasecading (id_level,name) values ('02','上海');用 id_level 这个字段值的长度来判断级别,
    长度为2,为一级
    长度为4,为二级
    长度为6,为三级访问上级或访问下级,就通过 id_level截断字符串来判断我国的国标文件《GB 13745 行政区划编码》,就是按照这种规则来处理多级数据的
    类似的,《学科分类编码》也是这样处理的
      

  4.   

    级联下拉菜单,当然用 AJAX, Jquery 好久没用啦,直接用 ExtJs