CharlyH: Automatische PHPSESSID in Formular valide machen

Beitrag lesen

Hallo liebe Forumsteilnehmer,

ist die php.ini entsprechend konfiguriert, wird bei deaktivierten Cookies bei Links und Formularen automatisch die PHPSESSID eingefügt. Im Quelltext sieht das dann so aus:

<form action="foo.php" method="post"><input type="hidden" name="PHPSESSID" value="4860886e35ea7dc569e3c008396ba1ba" />
[...]

Der Quellcode ist somit nicht mehr XHTML 1.0 strict valide. (document type does not allow element "input" here; missing one of "p", "h1", "h2", "h3", "h4", "h5", "h6", "div", "pre", "address", "fieldset", "ins", "del" start-tag [...])

Nun gibt es den bekannten Workaround, bei dem in der php.ini der Eintrag 'url_rewriter.tags' modifiziert wird. Ändert man dort die Einstellung 'a=href,area=href,frame=src,input=src,form=fakeentry,fieldset=' auf 'a=href,area=href,frame=src,input=src,fieldset=' und fügt einem Formular ein <fieldset> hinzu, dann bringt die Validierung das gewünschte Ergebnis. Der Quellcode sieht nun so aus:

<form action="form1.php" method="post">  
<fieldset><input type="hidden" name="PHPSESSID" value="ac2b5fc24d0e0f29032765ed38b68c77" />

[...]

Nun ist es jedoch so, dass ich ein Formular im Einsatz habe, bei dem ich absolut kein Fieldset möchte. Das Formular besteht nur aus einem hidden input und einem Absendebutton. Die Ausgabe mit dem Fieldset-Rechteck ist nicht nur unhübsch, sondern auch verwirrend. Also würde es naheliegen, die selbe Lösung statt mit <fieldset> mit einem <p> zu verwirklichen.

Ändere ich versuchsweise in der php.ini den Eintrag also auf 'a=href,area=href,frame=src,input=src,p=' (ob mit oder ohne einem <p></p> nach dem einleitenden form-Tag), dann wird die PHPSESSID _überhaupt nicht mehr_ eingefügt.

Meine Frage:

Gibt es auch eine Möglichkeit, die PHPSESSID _valide_ einfügen zu lassen, _ohne_ ein <fieldset> zu benutzen? Also zB. so wie von mir angedacht mit einem Absatz?

Ich bedanke mich für jeden Hinweis!

Mit lieben Grüßen

CharlyH