HTML-Programmierer oder Proxy-Programmierer Schuld
Steffen Wawryniuk
- meinung
Hallo Forumsgemeinde,
In unserer Firma benutz eine Abteilung einen Fachhandelsshop eines Namenhaften unternehmens.
Jedoch nach Änderungen in diesem Shop war es meinen Kollegen nichtmehr möglich die Bestellungen abzuschicken.
Also ich mir das näher anschaute (Quelltext) stellte ich folgendes Fest.
Der Warenkorb nimmt ein eigens Formular ein, der Submit button stellt eine Aktualisierungsroutine dar mit der z.b. die Bestellmengen der Postitionen in diesem Warenkorb(Formular) verändert können.
JEDOCH wird dann das Formular beendet, ein 2. wird geöffnet mit NUR dem Absendebutton für die Bestellung. Dieses Forumular wird auch geschlossen und ein 3. mit wieder nur einem Absendebutton zum Speichern als Standartbestellung.
Schnell erkannte ich das Der Proxy über den wir ins Internet gehen Formular OHNE Inhalt nicht ins Netz lässt. Meineserchtens eine KORREKTE Lösung seitens der Proxy Programmierer.
Nach einem Test mit dem Programmierer des Shops, ein Dummy VALUE wurde jeweils in die leeren Forumulare eingefügt funktionierte alles einwandfrei.
Der ShopProgrammierer behauptet nun natürlich das der Proxy-Programmierer den HTML Standart nicht korrekt interpretiert, da leere Formulare erlaubt sind.
Der Proxy Programmierer rechtfertigt sich natürlich damit das es ein leeres Formular sei.
Wie seht Ihr die Sache?
mfG
Steffen
P.S: Wenn gewünscht reiche ich den HTML Code nach.
Hi,
JEDOCH wird dann das Formular beendet, ein 2. wird geöffnet mit NUR dem Absendebutton für die Bestellung.
Der Proxy Programmierer rechtfertigt sich natürlich damit das es ein leeres Formular sei.
P.S: Wenn gewünscht reiche ich den HTML Code nach.
ich vermute, das würde helfen. Unter einem "leeren" Formular kann ich mir nämlich nichts vorstellen.
Das Minimum, was ein Formular in meinen Augen enthalten sollte, um etwas zum Server zu übertragen, ist eine "action"-Angabe im <form>-Tag. Damit wird der URL beschrieben, der auf dem Server angesprochen wird.
Ohne "action"-Angabe hätte der Browser schon erhebliche Schwierigkeiten, das Formular überhaupt _irgendwohin_ zu senden. (Wobei ich mal außen vor lasse, über JavaScript entsprechende Werte dynamisch zu setzen - das ist in meinen Augen äquivalent und für den Proxy ohnehin irrelevant - der sieht ja nur den erzeugten HTTP-Request und nicht dessen Entstehungsgeschichte.)
Alles andere ist m. E. "Verzierung" - egal, ob über GET oder POST, in beiden Fällen werden dem "Programm" auf dem Server nur zusätzliche Parameter übergeben. Und falls der diese Parameter nicht braucht (weil er beispielsweise über einen Cookie bereits genügend Informationen besitzt), dann fände ich ein 'leeres' Formular völlig in Ordnung.
Insofern halte ich - ohne jedoch hinreichend genaue Informationen zu besitzen - eher den Proxy für den "Schuldigen".
Die Antwort, die Du wahrscheinlich haben möchtest, dürfte allerdings in der DTD des entsprechenden HTML-Dialekts (welcher ist das?) enthalten sein.
Ich gehe davon aus, daß es dort keine Mindestanzahl irgendwelcher Formular-Elemente (<input> etc.) gibt, sondern alles optional ist.
Viele Grüße
Michael
Hoi,
Der ShopProgrammierer behauptet nun natürlich das der
Proxy-Programmierer den HTML Standart nicht korrekt interpretiert,
da leere Formulare erlaubt sind.
Der Proxy Programmierer rechtfertigt sich natürlich damit das es
ein leeres Formular sei.
Es ist ja kein 'leeres' Formular. Es enthaelt anscheinend einen
Button. Und *das* ist selbst nach HTML 4.01 strict erlaubt:
<!ELEMENT FORM - - (%block;|SCRIPT)+ -(FORM) -- interactive form -->
Interessanter ist die Frage, ob man einen leeren POST- Request
schicken darf. In der RFC 2068 (Sektion 8.2) steht dazu:
[...] a zero length chunk and
empty footer MAY be used to prematurely mark the end of the
message.
Mit anderen Worten: es ist eigentlich nicht so einfach erlaubt. Denn
ein leerer 'footer' scheint reserviert zu sein fuer Error-Handling.
Gruesse,
CK
Moin!
Interessanter ist die Frage, ob man einen leeren POST- Request
schicken darf. In der RFC 2068 (Sektion 8.2) steht dazu:
[...] a zero length chunk and
empty footer MAY be used to prematurely mark the end of the
message.
Mit anderen Worten: es ist eigentlich nicht so einfach erlaubt. Denn
ein leerer 'footer' scheint reserviert zu sein fuer Error-Handling.
Aber auch ein Formular, welches nur aus dem Absenden-Button besteht, schickt mindestens den Value des Buttons mit, ist also nicht leer.
Wenn allerdings sowas vorliegt:
<form action="irgendwohin" method="post">
</form>
javascript:document.forms[0].submit();
Da wird dann vermutlich garnichts abgeschickt, und sowas wäre böse.
- Sven Rautenberg
Hoi,
Interessanter ist die Frage, ob man einen leeren POST- Request
schicken darf. In der RFC 2068 (Sektion 8.2) steht dazu:
[...] a zero length chunk and
empty footer MAY be used to prematurely mark the end of the
message.
Mit anderen Worten: es ist eigentlich nicht so einfach erlaubt. Denn
ein leerer 'footer' scheint reserviert zu sein fuer Error-Handling.
Aber auch ein Formular, welches nur aus dem Absenden-Button
besteht, schickt mindestens den Value des Buttons mit, ist also
nicht leer.
Das ist so nicht ganz richtig. Richtig waere, wenn du das auf
Formulare mit benannten Submit-Buttons relativieren wuerdest.
Wenn allerdings sowas vorliegt:
<form action="irgendwohin" method="post">
</form>
javascript:document.forms[0].submit();
Da wird dann vermutlich garnichts abgeschickt, und sowas wäre böse.
Dasselbe gilt wohl fuer
<form action="script" method="post">
<input type="submit" value="Push me!">
</form>
Gruesse,
CK
Hallo Sven,
Aber auch ein Formular, welches nur aus dem Absenden-Button besteht, schickt mindestens den Value des Buttons mit, ist also nicht leer.
okay, aber wenn ich das Ausgangsposting richtig verstanden habe, war die eigentliche Absicht (und damit überhaupt der Sinn der Übung), den Inhalt des _ersten_ Formulars abzuschicken, und nicht den Wert eines Buttons im zweiten oder dritten Formular.
Wenn allerdings sowas vorliegt:
<form action="irgendwohin" method="post">
</form>
javascript:document.forms[0].submit();
Da wird dann vermutlich garnichts abgeschickt, und sowas wäre böse.
Gar nichts abschicken finste böse? Das mach ich jedes Jahr zu Weihnachten so... *scnr*
Herzliche Grüße,
Meg