Verknüpfte Dropdown Menu mit Werten aus MS SQL DB

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Verknüpfte Dropdown Menu mit Werten aus MS SQL DB

    Hi,
    ich habe mir mal eine Abfrage hier aus dem Forum geholt und diese etwas modifiziert. Jedoch erscheinen keine Daten aus der Tabelle in den Dropdown Feldern.
    Kann mir bitte jemand versuchen zu helfen

    Datenbankserver ist ein MS SQL 2000 Server

    Quellcode

    1. echo "<form name=sel>\n";
    2. echo "Hersteller: <font Hersteller_ID=Hersteller><select>\n";
    3. echo "<option value='0'>============</option> \n" ;
    4. echo "</select></font>\n";
    5. echo "Model: <font Hersteller_ID=Model><select>\n";
    6. echo "<option value='0'>=== Kenntnisse ===</option> \n" ;
    7. echo "</select></font>\n";
    8. ?>
    9. <script language=Javascript>
    10. function Inint_AJAX() {
    11. try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) {} //IE
    12. try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {} //IE
    13. try { return new XMLHttpRequest(); } catch(e) {} //Native Javascript
    14. alert("XMLHttpRequest not supported");
    15. return null;
    16. };
    17. function dochange(src, val) {
    18. var req = Inint_AJAX();
    19. req.onreadystatechange = function () {
    20. if (req.readyState==4) {
    21. if (req.status==200) {
    22. document.getElementById(src).innerHTML=req.responseText; //retuen value
    23. }
    24. }
    25. };
    26. req.open("GET", "Auswahl.php?data="+src+"&val="+val); //make connection
    27. req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=iso-8859-1"); // set Header
    28. req.send(null); //send value
    29. }
    30. window.onLoad=dochange('Hersteller', -1); // value in first dropdown
    31. </script>
    Alles anzeigen


    und

    Quellcode

    1. <?
    2. //set IE read from page only not read from cache
    3. header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
    4. header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
    5. header ("Cache-Control: no-cache, must-revalidate");
    6. header ("Pragma: no-cache");
    7. header("content-type: application/x-javascript; charset=tis-620");
    8. $data=$_GET['data'];
    9. $val=$_GET['val'];
    10. $db=mssql_connect('IP','','');
    11. mssql_select_db('DB',$db);
    12. if ($data=='Hersteller') { // first dropdown
    13. echo "<select name='Hersteller' onChange=\"dochange('Model', this.value)\">\n";
    14. echo "<option value='0'>==== choose ====</option>\n";
    15. $result=mssql_db_query("Select Hersteller_ID, Hersteller From Autohersteller order by Hersteller");
    16. while(list($Hersteller_ID, $name)=mssql_fetch_array($result)){
    17. echo "<option value=\"$Hersteller_ID\" >$name</option> \n" ;
    18. }
    19. } else if ($data=='Model') { // second dropdown
    20. echo "<select name='Model' >\n";
    21. echo "<option value='0'>====choose Model====</option>\n";
    22. $result=mssql_db_query("SELECT Hersteller_ID, Model FROM Automodel WHERE Hersteller_ID = '$val' ORDER BY Model");
    23. while(list($Hersteller_ID, $name)=mssql_fetch_array($result)){
    24. echo "<option value=\"$Hersteller_ID\" >$name</option> \n" ;
    25. }
    26. }
    27. echo "</select>\n";
    28. ?>
    Alles anzeigen


    Wäre echt genial wenn mir einer auf die Sprünge helfen könnte
  • wird die onload denn überhaupt aufgerufen? Das findest du raus indem du in #21 ein alert einbaust.
    Außerdem gibts du keinen Fehler aus, wenn das XMLHTTP Objekt falsch initialisiert wird. In die Catch Blöcke kannst du auch ein alert einbauen.
    Irgendwelche JavaScript Fehler? Installiere dir am besten mal Firebug, dann siehst du in der "Console" auch die Rückgabe vom AJAX Request.