Hilfe bei Dynamischen Drop Down

evoleena

Erfahrenes Mitglied
Hallo Ihr Lieben!

Ich hab da mal ein Problem.
Habe hier einen Quellcode, den ich auf meine Bedürfnisse ein wenig umgeändert habe.
Ich habe zwei Auswahlliste, beide werden mit DB einträgen gefüllt, wenn nur in der ersten was ausgewählt wird, soll mit Hilfe von OnChance die zweite richtig gefüllt werden, soweit ich testen konnte scheint das zu funktionieren,
ABER wenn ich es normal laufen lasse, komme ich nicht in den Pfad, wenn meine Auswahl voll ist.
Ich weiß grad gar nicht wie ich hier eine Datei hochladen kann, sonst würde ich mein Skript mal so reinstellen, das ihr euch das mal anschauen könnt.
Naja dann lieber so

1. Java Script Teil
PHP:
<script language='JavaScript' type='text/JavaScript'>
 function my_func()
 {
 document.my_form.submit();
 }
</script>

2.PHP Zeug
PHP:
<?
/****************************************************************************                                                               
* wenn auswahl getroffen wurde...                                           *                                                                         *        
*****************************************************************************/
//Prüfen ob schon was ausgewählt wurde oder ob das dokument erstmalig gestartet wurde
 if (isset($my_auswahl))
 {
     //Standard auswahlbox mit dem zuvor gewählten Wert initialisieren! Hier: SQL Abfrage
     $result_zuvor = mysql_query ("SELECT titel FROM buch WHERE (autor=$my_auswahl)", $db_buecher); 
     $checklog_zuvor =  mysql_num_rows($result_zuvor);
     $zuvor_name_box = mysql_result($result_zuvor, "titel");
     
     //Standard auswahlbox befüllen! Hier: SQL Abfrage
     $result_box = mysql_query ("SELECT titel FROM buch ORDER BY autor", $db_buecher); 
     $checklog_box =  mysql_num_rows($result_box);
     
     //Standard auswahlbox befüllen! Hier: select erstellen
     echo"<select name='my_auswahl' onChange='javascript:my_func()' >";
     
     //Schleife zum Befüllen
     $select =mysql_db_query($db_buecher,"SELECT titel FROM buch ORDER BY autor");
    while ($daten = mysql_fetch_array($select))
    {
        echo"<option value='".$daten['autornr']."'>".$daten['name'].", ".$daten['vorname']."</option><br>";
	} 
      //Standard auswahlbox mit dem zuvor gewählten Wert initialisieren! Hier: zuvor gewählten namen einsetzen
     echo"<option value='$my_auswahl' SELECTED>$zuvor_name_box</option>";
 }
     else
     {
/****************************************************************************                                                                           *
*wenn my_auswahl LEER ist                                                    *                                                                          *        
*****************************************************************************/
    
     //Standard auswahlbox befüllen! Hier: SQL Abfrage
     $result_box = 'SELECT titel, buch_id FROM buch ORDER BY buch_id';
	 $result = mysql_db_query($db_buecher,$result_box); 
     $checklog_box =  mysql_num_rows($result);
     
     //Standard auswahlbox befüllen! Hier: select erstellen
     echo"<select name='my_auswahl' onChange='javascript:my_func()' >";
     echo"<option value='' SELECTED>bitte wählen</option>";
          
     //Standard auswahlbox befüllen! Hier: Schleife zum Befüllen  
	$select =mysql_db_query($db_buecher,"SELECT * FROM autor ORDER BY name");
    while ($daten = mysql_fetch_array($select))
    {
        echo"<option value='".$daten['autornr']."'>".$daten['name'].", ".$daten['vorname']."</option><br>";
	}
         
     }
 ?>
    </td>
       <td> 
 <?        
/*******************************************************************************                                                                          *
* nun Werte aus der DB laden                         		                   *        
********************************************************************************/    
     if (isset($my_auswahl))
     {
     //Untergruppen Box befüllen! Hier: SQL Abfrage
     $result_untergrp = 'SELECT titel FROM buch WHERE (autor='.$my_auswahl.') ORDER BY titel ASC'; 
     $checklog_untergrp =  mysql_db_query($result_untergrp, $db_buecher);
     
     //Untergruppen Box befüllen! Hier: select erstellen
     echo"<select name='my_untergp'>";
     
     //Untergruppen Box befüllen! Schleife zum Befüllen 
     $result_untergrp = mysql_db_query($db_buecher, "SELECT buch_id,titel FROM buch WHERE autor='".$my_auswahl."'");
    while ($daten = mysql_fetch_array($result_untergrp))
    {        
        echo"<option value='".$daten['buch_id']."'>".$daten['titel']."</option>";      
       }
       echo"</select>";
     }
	                
     else
     {
         echo"noch nichts gewählt... ";
     }
 ?>

Also mein if(isset($my_auswahl)) ist nicht belegt, dabei wird ja was ausgewählt und wenn ich mit GET arbeite stehts auch oben drin

Ich hoffe ihr könnt mir helfen

LG
Evo
 
Hab nochmal was geändert hab noch mal die Variable my_auswahl mit $_get... geholt
jetzt haut es hin, das das zweite auswahlfeld das richtige ergebnis anzeigt, aber nun haut das erste nicht mehr hin und zwar hängt er an den zeilen

PHP:
$result_zuvor = mysql_db_query("SELECT vorname FROM autor WHERE autornr=$my_auswahl", $db_buecher); 
$checklog_zuvor =  mysql_num_rows($result_zuvor);
$zuvor_name_box = mysql_result($result_zuvor, "vorname");

$result_box = mysql_db_query ("SELECT name,vorname FROM autor ORDER BY autornr", $db_buecher); 
$checklog_box =  mysql_num_rows($result_box);

das meckert er bei beiden num_rows
Code:
mysql_num_rows(): supplied argument is not a valid MySQL result resource in...
und dann noch bei dem Result
Code:
mysql_result(): supplied argument is not a valid MySQL result resource...

Die SQL anweisungen habe ich nochmal gecheckt die funktionieren.
Woran liegt das?

LG
Evo
 
Zurück