phpbar.de logo

Mailinglisten-Archive

[php] Arrays per POST übertragen

[php] Arrays per POST übertragen

Candid 'Dogfish' Dauth Candid.Dauth at web.de
Mit Okt 8 22:49:35 CEST 2003


Hallo ihr da draußen,

OK, ich glaube, ich erkläre mein Problem ein Wenig detaillierter.
Vielleicht ist es von Bedeutung, dass meine Scripts bei Lycos Tripod laufen, 
falls das jemandem was sagt..

Nun handelt es sich um einen Chat, der eine Flüsterfunktion beinhaltet, das 
heißt, dass man quasi einen Privat-Chat aufmacht, bei dem man auswählen kann, 
welche Benutzer alle eingeladen werden sollen. Diese Benutzer werden dann 
hinterher gefragt, ob sie denn teilnehmen wollen usw..

Nun muss der Benutzer ja irgendwie auswählen, welche anderen Benutzer er in 
seinem Privatchat haben will. Deswegen wird ein Select-Feld angelegt, in dem 
man mit multiple choice die Benutzer auswählen kann, die man dabei haben 
will. Nun ist es bei Select-Feldern mit multiple choice nun mal so, dass man, 
wenn man ihnen einen einfachen Wert zuweist, hinterher nur die value von dem 
untersten ausgewählten Wert erhält; wenn ich also zum Beispiel ein 
Select-Feld mit multiple choice und dem namen "hallo" habe, das die Werte 
"Candid", "Dogfish" und "Dauth" enthält, und ich wähle "Candid" und "Dauth" 
aus, erhalte ich später nur das "Dauth" als Wert.

Um dieses Problem zu umgehen, kann man das Feld nun "hallo[]" statt nur 
"hallo" benennen, wenn ich dann das Formular mit den oben genannten Werten 
absende, erhalte ich nicht den String "Dauth", sondern ein Array mit den 
Werten "Candid" und "Dauth" ─ sollte ich zu Mindest. Auf meinem lokalen 
Computer funktioniert es auch. Nur wenn ich jetzt das Script auf meinem 
Lycos-Account ausführe, erhalte ich eben wie gesagt nur den String "Array" 
statt dem gewünschten Array selbst. Höchstwahrscheinlich hängt dies mit der 
Serverkonfiguration zusammen.

Deswegen würde es mich nun interessieren, ob es denn eine Möglichkeit gibt, 
die übertragenen Werte manuell herauszufiltern, dass ich mein Array selbst 
erzeugen kann. Dass ich dann zum Beispiel wie bei GET mit den QUERY_STRINGs 
eben irgendwie den String erhalte, den der Browser an den Webserver per POST 
überträgt ─ also Beispielsweise
hallo[0]=Candid&hallo[1]=Dauth
Könnte ich diesen String irgendwie herausbekommen, wäre die Sache ja kein 
Problem mehr.

Geschickt wäre es natürlich, wenn ich es einfach mit getallheaders() 
herausfinden könnte. Das Problem ist aber, dass der Query-String allein, also 
ohne irgendein "Post-vars:" oder irgendwas sonst davorgestellt auftritt. So 
kommt es in getallheaders() auch nicht vor. Gibt es irgendeine andere 
Möglichkeit, an diesen Query-String heranzukommen?

Hoffentlich war dies ausführlich genug...

-- 
Grüße von hier drinnen, aus Biberach an der Riss 
(<http://www.stadt-biberach.de/>),
Dogfish (<http://dogfish.net.tc/>)

php::bar PHP Wiki   -   Listenarchive