tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
1
ZUGRIFFE
1679
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    sharmuur sharmuur ist offline Mitglied Bronze
    Registriert seit
    Feb 2010
    Ort
    München
    Beiträge
    45
    Hallo,

    in meinem PHP-skript habe ich ein FORM und innerhalb des FORMs habe ich Auswahllisten, wobei die Inhalte von diesen Auswahllisten voneinander abhängig sind. ZB. habe ich die folgenden Auswahllisten Auswahl_Liste 1, Auswahl_Liste 2, Auswahlliste 3

    Auswahl_Liste 1
    1
    2
    3

    Auswahl_Liste 2
    a1
    b1
    a2
    b2
    a3
    b3

    Auswahlliste 3
    a1_1
    a1_2
    a1_3
    .
    .

    Wenn ich bei der Auswahl_Liste 1 die Zahl 1 wähle dann bekomme ich in der Auswahl_Liste 2 den Listeninhalte a1 und b1 angezeigt. Wenn ich in der Auswahl_Liste 2 a1 wähle bekomme ich in der Auswahlliste 3 a1_1, a1_2 und a1_3 angezeigt usw.. Damit die Auswahlisteninhalte abhängig von den anderen geändert werden müssen(=das script sollte mit den ausgewählten $_POST['Variablen'] neugeladen) habe ich bei jedem select element onChange="this.form.submit()" eingebaut.

    Aber da bekomme ich ein Problem. Sobald ich einen Wert bei der ersten Auswahlliste wähle, wird das Skript neugeladen und werden allee übrigen $_POST['Variablen'] für die restlichen Auswahllisten mit 0 belegt.
    Und das zweite Problem ist: bei der If Bedingung für die nicht ausgewählten Auswahllisten: If(empty($_POST['var'])) bekomme ich false, was zur falschen Ergebnissen führt . Ich glaube hier wird 0 als ein integer Wert interpretiert.

    Kann jemand mir bitte sagen, wo das fehler liegt?

    Danke voraus
    sharmuur
    Geändert von sharmuur (18.04.10 um 22:39 Uhr)
     

  2. #2
    Sprint Sprint ist offline Mitglied Platin
    Registriert seit
    Apr 2004
    Ort
    Die heimliche Hauptstadt des Bieres
    Beiträge
    579
    Hi,

    da gibt es jetzt aus meiner Warte zwei Möglichkeiten. Entweder baust du dir die Selects alle auf ein Mal auf und verbindest die mit Javascript. Dadurch muß die Seite nicht immer neu geladen werden und die Selects sind trotzdem von einander abhängig. Das kann aber je nach Größe der Selests ein gewaltiger Aufwand beim Aufbau des JS Scripts werden. Die andere Möglichkeit wäre, daß die Selects ihre Werte per GET übergeben und die vorherigen Wahlen immer mitschicken. Dabei spart man sich halt den Aufand, alle Selects mit allen Möglichkeiten vorher für JS aufzubauen.
    Als dritte Möglichkeit wäre Ajax zu nennen, um die Daten einzeln nachzuladen ohne die Seite neu laden zu müssen, aber da muß ich passen. Von Ajax hab ich noch keine Ahnung, aber da weiß bestimmt jemand anderes hier eine Lösung.

    Das zweite Problem dürfte sich eigentlich von selbst erledigen, wenn das erste gelöst ist, egal auf welche Weise.
     
    Think Different.

Ähnliche Themen

  1. Antworten: 9
    Letzter Beitrag: 14.01.11, 14:08
  2. Frage zu onChange="this.form.submit();
    Von xtramen01 im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 23.12.09, 08:34
  3. Antworten: 2
    Letzter Beitrag: 12.10.09, 16:31
  4. Antworten: 2
    Letzter Beitrag: 13.11.04, 19:19
  5. Antworten: 8
    Letzter Beitrag: 14.08.03, 01:47