<?php
    define('MYSQL_CLIENT_MULTI_RESULTS', 65536);
    mysql_connect('192.168.0.84','price','$hprice') or  die("Could not connect to database");
    mysql_select_db('price') or  die("Colud not select database");   @$cat1=$HTTP_GET_VARS['cat1'];  // first return value from the reload.
    echo "<BR>CAT1 value " . $cat1;
   @$cat2=$HTTP_GET_VARS['cat2'];
    echo "<BR>CAT2 value " . $cat2;  // second return value from the reload page.
   @$cat3=$HTTP_GET_VARS['cat3'];
    echo "<BR>CAT3 value " . $cat3;  // Don't what is this for.?>
<html><head>
  <title>Price - Test 4</title><SCRIPT language=JavaScript>
function reload1(form)
{
var val1=form.cat1.options[form.cat1.options.selectedIndex].value;
self.location='Tripepulldown3.php?cat1=' + val1;}function reload2(form)
{
var val2=form.cat2.options[form.cat2.options.selectedIndex].value;
self.location='Tripepulldown3.php?cat1=' + val1 + '&cat2=' + val2;
}function reload3(form)
{
var val3=form.cat3.options[form.cat1.options.selectedIndex].value;
self.location='Tripepulldown3.php?cat1=' + val1 + '&cat2=' + val2 + '&cat3=' + val3;
}</SCRIPT></head>
<body><?php$sql1 = "select Cat_ID,Cat_Name from Tbl_hw_Category where Cat_ID=Cat_Parent order by Cat_ID";
$result1 = mysql_query($sql1);if (isset($cat1) and strlen($cat1) > 0)
{
   $sql2 = "SELECT Cat_ID,Cat_Name from Tbl_hw_Category where Cat_ID<>Cat_Parent AND Cat_Parent=$cat1 ORDER BY Cat_ID";
   $result2 = mysql_query($sql2);
}
?><FORM name="isc" method=POST action="success.php">
   <select name="cat1" size="1" onchange="reload1(this.form)">
   <option value="" selected>--- Select First ---</option>
<?php     While($nt1 = mysql_fetch_array($result1)) {
     if ($nt1['Cat_ID'] == @$cat1) {
         echo "<option selected value='$nt1[Cat_Id]'>$nt1[Cat_Name]</option>";}
     else
        {
        echo  "<option value='$nt1[Cat_ID]'>$nt1[Cat_Name]</option>";
     }
}
?></select>
  <select name="cat2" size="1" onchange="reload2(this.form)">
  <option value="" selected>--- Select Second ---</option>   <?php
      while($nt2 = mysql_fetch_array($result2)) {
      if ($nt2['Cat_Id'] == @$cat2)
      {
         echo  "<option selected value='$nt2[Cat_ID]'>$nt2[Cat_Name]</option>";
      }
      else
      {
           echo "<option value='$nt2[Cat_ID]'>$nt2[Cat_Name]</option>";
      }
}
?></select><select name="stage3" size="1" onChange="reload3(this.form)">
<option value="" selected>--- Select Third ---</option>   <?php
      while($nt3 = mysql_fetch_array($result3)) {
      if ($nt3['Cat_Id'] == @$cat3)
      {
         echo  "<option selected value='$nt3[Cat_ID]'>$nt3[Cat_Name]</option>";
      }
      else
      {
       echo "<option value='$nt2[Cat_ID]'>$nt2[Cat_Name]</option>";
      }
}
?></select><input type=submit value=Submit></FORM>
</body>
</html>

解决方案 »

  1.   

    怎么多没有人回啊,是不是没明白我的意思啊,
    如:在选择第一个下拉框的时候,cat1=1,但在选择第二个下拉框的时候,cat就等于空了
      

  2.   

    <?php     While($nt1 = mysql_fetch_array($result1)) {
         if ($nt1['Cat_ID'] == @$cat1) {
             echo "<option selected value='$nt1[Cat_Id]'>$nt1[Cat_Name]</option>";}
         else
            {
            echo  "<option value='$nt1[Cat_ID]'>$nt1[Cat_Name]</option>";
         }
    }
    ?>
    $nt1[Cat_Id]和$nt1[Cat_ID]--Id和ID
      

  3.   

    那你这样写试试
    <?php     While($nt1 = mysql_fetch_array($result1)) {?>    <option  if ($nt1['Cat_ID'] == @$cat1) {
             echo ("selected");} value='<?=$nt1[Cat_ID]?>'><?=$nt1[Cat_Name]?></option>"
     <?php
    }
    ?>
      

  4.   

    <?php
    While($nt1 = mysql_fetch_array($result1)) {?>
     <option  <?php if ($nt1['Cat_ID'] == @$cat1) {echo ("selected");}?> value='<?=$nt1[Cat_ID]?>'><?=$nt1[Cat_Name]?></option>"
    <?php
    }
    ?>
      

  5.   

    不是那个问题啊,我是在选择第二个下拉框的时候,我要使用到第一个下拉框的Cat_ID,但我在选择第二个下拉框的时候,第一个Cat_ID就没值了