Witam,
mam taki problem:
Robię dziennik szkolny, dający nauczycielom możliwość wstawiania uczniom ocen do bazy za pomocą www.
Chciałabym zrobić dwa zależne selecty:
- klasa
- uczeń klasy wybranej powyżej.
Chciałam skorzystać ze sposobu znalezionego na stronie: http://ajaxin.pl/2007/02/22/zalezne-od-sie...tmlowe-selecty/
ale nie chce mi działać :/ wyświetla mi klasy danego nauczyciela, ale nie chce wyświetlać uczniów po wybraniu klasy (select jest aktywny ale nic w nim nie ma...)
Baza wygląda +-tak:
KLASY(klasa, matematyka, biologia...) np
KLASY(2e, kowalski, wesolowski...)

UCZEN(id_ucznia, ..., klasa..) np
UCZEN(1001, ... , 2e...)

wyszukiwanie trochę uprościłam (wyszukanie klas nauczyciela, to akurat mi działa, więc żeby nie zaśmiecać zbędnym kodem, to wpisałam na sztywno szukaj klasy gdzie przedmiot="kowalski")

Podejrzewam, że nie do końca (albo i wcale :/) nie rozumiem przekazywania zmiennej $_GET i coś tam pomieszałam...mógłby ktoś spojrzeć profesjonalnym okiem na te dwa kody i podsunąć co może być nie tak? bo już mam mroczki przed oczami jak na to patrzę...
moje pliki:

nauczyciel.php
  1. <?php
  2. include "auth_user.inc.php";
  3. include "conn.inc.php";
  4. ?>
  5. <html>
  6. <head>
  7. <title> Dziennik </title>
  8. <script type="text/javascript" src="prototype.js"></script>
  9. <script type="text/javascript" src="nauczyciel.js"></script>
  10. </head>
  11. <h1> Witaj </h1>
  12. Wybierz klasę i ucznia, aby wpisać ocenę:
  13.  
  14. <form name="doublecombo" id="doublecombo" action="ddl.php">
  15. <select id="a" onChange="getLevel(this)">
  16. <option value="0" selected>-- wybierz klasę --</option>
  17. <?php
  18. $query="select klasa from klasy where $matematyka='kowalski' ORDER BY klasa ASC";
  19. $klasy=mysql_query($query) or die(mysql_error());
  20.  
  21. while ($row2 = mysql_fetch_array($klasy))
  22. {
  23.    echo '<option value="', $row2["klasa"], '">', $row2["klasa"], '</option><br> ';
  24. }
  25. ?>
  26. </select>
  27.  
  28. <select     id="b" onChange="getLevel(this)" disabled>
  29.    <option selected>-- puste --</option>
  30. </select>
  31.  
  32. </form>
  33. ...



ddl.php
  1. <?php
  2. header('Content-Type: text/xml');
  3. header('charset=utf-8;');
  4. include "auth_user.inc.php";
  5. include "conn.inc.php";
  6.  
  7. /* Sprawdzanie czy id jest liczbą - w PHP od wersji 5.2*/
  8. if(filter_input(INPUT_GET, 'id', FILTER_VALIDATE_INT) == FALSE) return false;
  9.  
  10. //dla starszych wersji PHP
  11. if (!isset($_GET["id"])) exit;
  12.  
  13. $id = $_GET["klasa"];
  14. $query ="SELECT id_ucznia FROM uczen WHERE klasa = ".$id." ";  
  15. $uczen=mysql_query($query) or die(mysql_error());
  16.  
  17. echo '<?xml version="1.0" encoding="utf-8" ?>'
  18.    .'<records>';
  19.    if(mysql_num_rows($uczen) > 0)
  20.    {
  21.     while ($row = mysql_fetch_array($d)) {
  22.            echo '<option id="'.$row['id_ucznia'], '">', $row['id_ucznia'],'</option><br>';
  23.        }
  24.    }
  25.    else
  26.    {
  27.        echo '<option id="1">Brak podkategorii!</option>';
  28.    }
  29. echo '</records>';
  30. ?>