Formular übermitteln - Reihenfolge der Variablen
basti_p
- php
Hallo,
kurze Frage: wenn ich ein HTML-Formular mit z.B. 10 Feldern übermittle und dann mit foreach($_POST as ...) darauf zugreife - ist die Reihenfolge der Variablen dann _immer_ dieselbe wie in der HTML-Datei?
Danke und Grüße Basti
Hi,
ist die Reihenfolge der Variablen dann _immer_ dieselbe wie in der HTML-Datei?
nein, nicht immer, da Usereingaben grundsätzlich manipulierbar sind. Aber wieso die Frage? Es gibt das name-Attribut, welches mitübertragen wird.
freundliche Grüße
Ingo
Hallo,
Hintergrund: es geht um eine Bildverwaltung, die Reihenfolge der Bilder (in einer Tabelle) kann mit Javascript geändert werden (insertBefore...). In jeder Bildzeile gibt es ein input-Feld mit dem Bildnamen. Wenn ich mich jetzt darauf verlassen könnte, dass das Formular beim Absenden von oben nach unten abgearbeitet wird und die Daten im $_POST-Array in der gleichen Reihenfolge vorliegen, könnte ich mir eine zusätzliches Zähler-input-Feld sparen.
Grüße Basti
Hi,
Wenn ich mich jetzt darauf verlassen könnte, dass das Formular beim Absenden von oben nach unten abgearbeitet wird und die Daten im $_POST-Array in der gleichen Reihenfolge vorliegen, könnte ich mir eine zusätzliches Zähler-input-Feld sparen.
Darauf solltest du dich nicht verlassen.
Nutze doch Feldnamen in der Form name="feld[xy]" - dann bekommst du in $_POST['feld'] ein Array, welches wiederum die verwendeten xy als Keys hat.
MfG ChrisB
Hallo,
Darauf solltest du dich nicht verlassen.
Darauf DARFST Du dich nicht verlassen. Ich arbeite gerade an einem Tool, das ein Formular von ueber 100 Feldern verarbeitet. Ich versende die Daten per AJAX, das heisst ich lege die Reihenfolge der Parameter fest. Trotzdem kommen sie anders bei meiner ASP Seite an.
Nutze doch Feldnamen in der Form name="feld[xy]" - dann bekommst du in $_POST['feld'] ein Array, welches wiederum die verwendeten xy als Keys hat.
Das ist z.B. eine brauchbare Loesung, wenn Du nicht mit dem Name Atribut arbeiten willst/kannst.