hi,
Gibts das auch für den hier vorliegenden Fall mit application/x-www-form-urlencoded?
Sorry. Da hab ich mich mit den multipart/formdata verlaufen.
Dieser Enctype transportiert ein Array. Wobei die einzelnen Arrayelemente jeweils Schlüssel/Werte Paare sind. Das kann man kurz und knapp als [{},{}..]
skizzieren.
Unabhängig davon dürfen in einem Array Elemente durchaus mehrfach vorkommen und auch deren Reihenfolge ist definiert.
Die Spezifikation für application/x-www-form-urlencoded hingegen sieht vor, daß mehrere Parameter mit demselben namen Ein Array bilden. Abstrakt transportiert dieser Enctype eine Struktur wie folgt:
# names=foo;names=bar;names=usw;number=123
$stuct = {
names => ['foo','bar','usw'],
number => 123
};
Schon aufgrund unterschiedlicher Strukturen ergibt sich ein unterschiedlicher serverseitiger Umgang mit diesen Enctypes. Während multipart/form-data grundsätzlich ein Array transportiert, steckt in dem anderen Enctype ein Hash in dem die Werte ggf. Arrays sind.
PHP jedoch orientiert sich an einer bestimmten Schreibweise der Parameternamen
# addr[name]=Otto&addr[vname]=Hans&addr[plz]=99999&number[][][]=123&person=admin
Array
(
[addr] => Array
(
[name] => Otto
[vname] => Hans
[plz] => 99999
)
[number] => Array
(
[0] => Array
(
[0] => Array
(
[0] => 123
)
)
)
[person] => admin
)
So liegen die Fakten. Man muss sich nur damit befassen dann versteht man das auch.
MfG