snopsy Geschrieben 30. Juni 2003 Teilen Geschrieben 30. Juni 2003 Hi, ich erstelle gerade ein Eingabeformular. Hierbei gibt es 2 Selectboxen. Diese Select-Boxen werden mit Inhalten aus einer Datenbank gefüllt. Der Inhalt in der zweiten Selectbox soll immer je nach Auswahl in der ersten gefüllt werden. In der ersten Select-box werden z.B. meine Gruppen angezeigt und in der zweiten sollen die Untergruppen angezeigt werden. Wie kann ich die select-Anweisung der zweiten select-box aktualisieren, wenn sie der Wert in der ersten geändert hat? hier mein Beispiel: <tr> <td width="20%"> Gruppe: </td> <td width="60%"> <select name='eing_gruppe' size='1'> <? $sql = "select * from gruppe"; $result = mysql_query($sql); $zahl = mysql_num_rows($result); for($i=0; $i<$zahl; $i++) { $zeile = mysql_fetch_array($result); echo "<option value='$zeile[id]'>$zeile[gruppenname]</option>"; } ?> </select> </td> </tr> <tr> <td width="20%"> Untergruppe: </td> <td width="60%"> <select name='eing_untergruppe' size='1'> <? $select = "select * from untergruppe where gruppe='$eing_gruppe'"; $res = mysql_query($select); $num = mysql_num_rows($res); for($a=0; $a<$num; $a++) { $row = mysql_fetch_array($res); echo "<option value='$row[id]'>$row[untergruppenname]</option>"; } ?> </select> </td> </tr> [/PHP] Kann mir jemand bei diesem Problem helfen? Wäre super. Gruß Snopsy Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Wolle Geschrieben 30. Juni 2003 Teilen Geschrieben 30. Juni 2003 Verschoben zur Webserverprogrammierung Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
jomama Geschrieben 1. Juli 2003 Teilen Geschrieben 1. Juli 2003 Verschieben wäre nicht nötig gewesen, schliesslich ist das JavaScript. DU kannst ja mal bei shortnews.de nachschauen, die haben das auch so. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
arok Geschrieben 1. Juli 2003 Teilen Geschrieben 1. Juli 2003 mhhh, also mit php kann des nich funktionieren, wenn ich dich richtig verstanden hab. weil php is nur serverseitig. d.h. es ginge höchstens so das der user ein ding auswählt, dann "weiter" klickt und dann die passende untergruppe auswählen kann. was du willst musst du wohl mit java-script machn. aba frag mich net wie ^^ Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Art Geschrieben 1. Juli 2003 Teilen Geschrieben 1. Juli 2003 also ich würde in der ersten select box per onchange eine js funktion aufrufen die dann die seite mit den entsprechenden parametern lädt. <? $sql = "select * from gruppe"; $result = mysql_query($sql); $zahl = mysql_num_rows($result); echo "select name=\"eing_gruppe\" onChange=my_function(this.form.eing_gruppe.options[this.form.eing_gruppe.options.selectedIndex].value)>"; for($i=0; $i<$zahl; $i++) { $zeile = mysql_fetch_array($result); echo "<option value='$zeile[id]'>$zeile[gruppenname]</option>"; } echo "</select>"; ?> [/php] damit wird [php]$zeile[id] an die js-funktion my_function übergeben. wichtig ist natürlich, dass die zuordnung der untergruppen zu den gruppen über die id läuft. das javascript könnte dann so aussehen: echo " <script type=\"text/javascript\">\n" ."function my_function(zeile_id){\n" ."window.location.href=\"deine_seite.php?untergruppen_id=\" + zeile_id + \";" ."}\n" ."</script>"; [/php] dementsprechend mußt du natürlich die 2. db-abfrage anpassen. hoffe es hilft dir. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etreu Geschrieben 2. Juli 2003 Teilen Geschrieben 2. Juli 2003 1. Möglichkeit: Du lädst alle Daten in verschiedene JavaScript-Arrays und lässt dir das entsprechende Feld in deine zweite Auswahlliste einschtragen. (Vorteil -> dynamische Genrierung läuft schneller; Nachteil -> laden der Seite dauert länger, da (viele) unnötige Daten aus der Datenbank ausgelesen werden) 2. Möglichkeit Bei "onChange" rufst du eine JavaScript-Funktion auf die den Wert aus der ersten aus der ersten ausliest, ein Formular abschickt und so die Seite erneut aufbaut, diesmal mit der Untergruppeneinträgen. (Vorteil -> schnellerer Seitenaufbau; Nachteil -> jedes Mal wenn eine andere Gruppe gewählt wird, wird die Seite neu aufgerufen / aufgebaut (>TRAFFIC)) 3. Möglichkeit Du baust einen weiten Submit-Button hinter den Gruppen ein. Der Rest läuft ähnlich wie 2. (Vorteil -> JavaScript kann deaktiviert sein; Nachteil -> siehe 2.) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.