dedlfix: 2 GET-Variabeln durch 2 Formulare übergeben: funktioniert nicht

Beitrag lesen

Tach!

Nun sollte die URL so aussehen: http://meineswebsite.de/Verzeichnis/?var1=bla1;var2=bla2 bzw. http://meineswebsite.de/Verzeichnis/?var1=bla1&var2=bla2 .
Das Problem ist nur, dass die zweite GET-Variable die erste GET-Variable überschreibt: http://meinewebsite.de/Verzeichnis/?var2=bla2 .

Überschreibt? Meinst du, dass die Parameter nicht var1 und var2 sondern beide var heißen, à la var=foo;var=bar? Dann schreibt PHP den ersten Wert in $_GET['var'] und den zweiten Wert auch wieder in $_GET['var'], woraufhin der erste verloren geht. Das bekommt man nur gelöst, indem man var[] mit []-Klammern nimmt, dann erzeigt PHP ein Array: $_GET['var'][] = 'foo'; $_GET['var'][] = 'bar';

Oder meinst du, dass vom zweiten Formular der Eintrag in action-Attribut bereits einen Querystring aus dem vorhergehenden Vorgang enthält, also action="example.php?var1=foo;var2=bar"? Dann ignoriert der Browser den Querystring und ersetzt ihn durch die neuen Formularparameter. Du bekommst dann die alten Parameter nur dann auch noch angehängt, wenn sie Bestandteil des Formulars sind, also zum Beispiel als die bereits erwähnten Hidden-Elemente. Oder eben die Session, dann geht das Zeug nicht noch zweimal auf die Reise zum Browser.

Leider kann man ein & oder ; nicht einfach in den Namen von form ´rein schreiben - auch wenn Unicode aktiviert ist.

Der Name von form? Du meinst das name-Attribut des form-Elements? Was willst du darin mit & oder ; und wie dachtest du soll das dein Problem lösen? Oder meintest du etwas anderes?

dedlfix.