Riesenproblem seit 7 tagen... Hilfe... AJAX/JSON

so meine freunde, ich gebe es auf, ich kann nicht mehr, habe es versucht und versucht… möchte einfach nicht klappen, hoffe ihr könnt mir weiter helfen…
Zum Problem:

Habe eine Datenbank mit 2 Tabellen, 1Kunde , 1Projekt

habe einen formular, mit 3 dropdownliste. 1 ist gefüllt mit jahreszahlen, der rest ist leer…

nun möchte ich, sobald ich ein jahr auswähle, mir das programm die dazu gehörigen daten (Kunden/Projekt) aus der DB holt, soweit so gut…

Meine Bemühungen sehen so aus:
REQUEST (ein Teil):


function sendRequestYear(f){

    xhr = http();
    
    xhr.open("GET","all.php?name=" + escape(document.forms['f2'].Jahr.value), true); 
    
    xhr.onreadystatechange = output_all;
    xhr.send( null ); 
}

function output_all(){

    if( 4 == xhr.readyState  ){ 
        
        document.getElementById("all").style.visibility = "visible";
        inhalt = xhr.responseText;
        
        var laenge = document.getElementById("liste").childNodes.length;

        for(i = 0; i < laenge; i++) {  
            var loeschen = document.getElementById("liste").firstChild;
            document.getElementById("liste").removeChild(loeschen );
            
            var l2 = document.getElementById("kunde").firstChild;
            document.getElementById("kunde").removeChild(l2 );
        }
       
        liste = document.getElementById("liste");
        
        rueckgabe = eval ( "(" + inhalt + ")" );
 
       for ( i = 0; i < rueckgabe.length; i++ ) {
        
            var projekte = rueckgabe[i];            

            li  = document.createElement("option");
            li2 = document.createElement("option");

            li.setAttribute("value", projekte.Projekt);
            li2.setAttribute("value", projekte.Kunde);

            var textknoten = document.createTextNode( projekte.Projekt );
            var t2 = document.createTextNode( projekte.Kunde );
            
            li.appendChild( textknoten );
            li2.appendChild( t2 );

           liste.appendChild( li );
           kunde.appendChild( li2 );
        }
    }  
}
  • all.php:
    [PHP]
    if(isset($_GET[‚name‘])){

      require_once 'passwd.inc.php';
      require_once 'connect.inc.php';
      require_once 'json.php';
      
      $json = new Services_JSON;
          
      //$sql = 'SELECT * FROM projekte WHERE Jahr = "' . $_GET['name'] . '"';
      
      $sql = 'SELECT DISTINCT Projekt FROM projekte WHERE Jahr = "' . $_GET['name'] . '"';    
      $result = mysql_query($sql);
      
      while($tupel = mysql_fetch_array($result, MYSQL_ASSOC) ) 
          $projekte[] = $tupel;
    
      $sql2 = 'SELECT distinct Kunde FROM projekte WHERE Jahr = "' . $_GET['name'] . '" ';
      $result = mysql_query($sql2);
      
      while($tupel = mysql_fetch_array($result, MYSQL_ASSOC) ) 
          $projekte[] = $tupel;
      
          echo $json->encode($projekte);
    

    }

[/PHP]

als Ergebnis:
[{„Projekt“:„Intranet“},{„Projekt“:„Infomaterial“},{„Projekt“:„Geburtstag“},{„Projekt“:„Poker“},{„Kunde“:„Klein“},{„Kunde“:„Hansen“},{„Kunde“:„Meier“},{„Kunde“:„Franke“}]

nun kriege ich aber in die 1. DDListe insgesamt 8 einträge, davon jedoch die letzten 4 als ‚undefined‘ (da die letzten 4 zum Kunden gehören)
genau dasselbe natürlich auch beim Kunden (da sind die 1. vier undefined, da zugehörigkeit zum projekt)

Wie kann ich diese ‚undefined‘-Einträge löschen?
Bei einem Ergebnis von 50 Kunden und 50 Projekte habe ich jedesmal ja auch 50 undefined-Einträge stehen, sieht katastrophal aus!!!

Bitte helfen, oder anderen Vorschlag, bin flexibel, hauptsache es funzt :wink:

danke und gruß
bombbass