въпрос относно няколко <select>-a

bgmaniaka

Registered
Идеята ми е в 1 <selsect> да се заредят няколко неща от databse, когато избера нещо, тогава отстрани или отдолу да се появи нов ред пак с <select> с други неща(просто ще съм направил нова заявка с първото селектирано), после още 1 <select> и т.н. Трябва ми просто кода, който ще взима информацията от единия <select> и после ще създаде друг, просто не ми се правят множество post/get заявки.
 
Еми дай по - точна информация , таблици , какво искаш да извадиш и т.н. , а не да ни кажеш идеята ми е да отида до магазина и да купя нещо , но да ида и до другия магазин ... ( г/д) ...
 
например в таблица students има колона клас,ученици,предмети,оценки.
в първия селект са класовете, когато се избере клас, се появява друг селект с учениците от този клас(като нали се направи заявка и изведе само учениците от този клас), след това като се избере, се прави друга заявка за предметите при този ученик в този клас и излиза друг селект и когато се избере и тук да се натисне бутон изведи или подобно и в таблица да излязат оценките например.

Знам че примера не е перфектен, но е почти същото.
 
Ако съм те разбрал правилно... Давам ти моя код, който използвам за сайт за обяви. При мен са Области и Категории - като избереш Област излиза Район, а като избереш Категория излиза Подкатегория. Успех!

PHP:
<?php
//Начало области
    $row_oblast=mysql_query("SELECT `id`,`raion` FROM `raioni` WHERE `raion` LIKE '%област%' ");

    $oblasti = array();
    $raioni = array();

  while($oblast=mysql_fetch_assoc($row_oblast)) {
  $idob = $oblast['id'];
  $row_raion=mysql_query("SELECT * FROM `raioni` WHERE `master`='$idob'");
  $raioni2 = array();

  while($raion=mysql_fetch_assoc($row_raion)){
    $raioni2[] = $raion['raion'];
  }

  $oblasti[] = $oblast['raion'];
  $raioni[] = $raioni2;

}
//Край области

//Начало категории
 $row_cat=mysql_query("SELECT * FROM `categories`");

    $catar = array();
    $undercatar = array();

  while($cat=mysql_fetch_assoc($row_cat)) {
  $idcat = $cat['idcat'];
  $row_under=mysql_query("SELECT * FROM `podcategories` WHERE `idmaster`='$idcat'");
  $undercat2 = array();

  while($under=mysql_fetch_assoc($row_under)){
    $undercat2[] = $under['namecatpod'];
  }

  $catar[] = $cat['namecat'];
  $undercatar[] = $undercat2;

}
//Край категории

echo '
<script type="text/JavaScript" src="jquery-1.4.3.min.js"></script>
<script type="text/javascript">
	$(function() {
       var cat = $("#cat"),
           podcat = $("#podcat").hide();

           var podcats = [';
                  for($i1 = 0, $len1 = count($undercatar); $i1 < $len1; $i1++) {
                    echo '[';
                    for($j1 = 0, $len21 = count($undercatar[$i1]); $j1 < $len21; $j1++) {
                      echo "'" . $undercatar[$i1][$j1] . "'";
                      if($j1 < $len21 - 1) {
                        echo ',';
                      }
                    }
                    echo ']';
                    if($i1 < $len1 - 1) {
                      echo ',';
                    }
                  }
            echo '];';

    echo '
       cat.change(function() {
           if(this.value === "hint") { 
               podcat.hide();
               return;
           }

           var val = parseInt(this.value);

           if(val >= 0 && val <= podcats.length) {
               podcat.empty();

               for(var i = 0; i < podcats[val].length; i++) {
               $(\'<option value="\' + podcats[val][i] + \'">\' + podcats[val][i] + \'</option>\').appendTo(podcat);
               }

               podcat.show();
           } else {
               podcat.hide();
           }
       });

       var oblast = $("#oblast"),
           region = $("#region").hide();

           var regioni = [';
                  for($i = 0, $len = count($raioni); $i < $len; $i++) {
                    echo '[';
                    for($j = 0, $len2 = count($raioni[$i]); $j < $len2; $j++) {
                      echo "'" . $raioni[$i][$j] . "'";
                      if($j < $len2 - 1) {
                        echo ',';
                      }
                    }
                    echo ']';
                    if($i < $len - 1) {
                      echo ',';
                    }
                  }
            echo '];';

echo '
       oblast.change(function() {
           if(this.value === "hint") {
               region.hide();
               return;
           }

           var val = parseInt(this.value);

           if(val >= 0 && val <= regioni.length) {
               region.empty();

               for(var i = 0; i < regioni[val].length; i++) {
               $(\'<option value="\' + regioni[val][i] + \'">\' + regioni[val][i] + \'</option>\').appendTo(region);
               }

               region.show();
           } else {
               region.hide();
           }
       });

    });
</script>
';
//Начало области
echo "<tr><td><font color='red'><b>*</b></font>Област: <td>";
    echo '<select name="oblast" id="oblast">
             <option value="hint">Всички области</option>';
              for($i = 0, $len = count($oblasti); $i < $len; $i++) {
                echo '<option value="' . $i . '">' . $oblasti[$i] . '</option>';
              }
    echo '</select>';
    echo '<select name="mestata" id="region"></select>';
echo "<BR><BR></td></tr>";
//Край области

//Начало категории
echo "<tr><td><font color='red'><b>*</b></font>Категория: <td>";
	  echo '<select name="cat" id="cat">
             <option value="hint1">Моля изберете категория</option>';
              for($i1 = 0, $len1 = count($catar); $i1 < $len1; $i1++) {
                echo '<option value="' . $i1 . '">' . $catar[$i1] . '</option>';
              }
    echo '</select>';
    echo '<select name="ppodcat" id="podcat"></select>';
echo "<BR><BR></td></tr>";
//Край категории
?>

Надявам се да съм ти помогнал!
 

Горе