[php] Formular ungewolltes hidden?

Fishbone22

Hallo zusammen :)
ID: 89701
L
20 April 2006
253
4
Hallo.

Wenn ich meine Seite bei validome.org validieren lasse, spuckt der ne fehlermeldung aus, dass angeblich direkt hinter dem <form method...> tag ein <input type="hidden" name="SESSID" value="sessionid" /> etc. Aber wenn ich im Quelltext gucke, steht das nicht. Wie kann ich das verhindern bzw. valide machen?


Lg, Fishbone22 :)
 
Dazu musst du an den Anfang deiner PHP-Datei folgenden Code setzen:
PHP:
ini_set('session.use_trans_sid', '0');
Allerdings musst du dann bei allen Links etc. die Session-ID selbst anhängen.
 
jo aber das will ich net, geht das auch irgendwie anders? es is ja nich schlimm das das hidden ding im qt steht aber das das die page direkt unvalide macht stört. da muss ja nur n block element drumm dann wärs ja ok. son div. aber man kann dem teil ja nich sagen wo das aufkreuzen soll ^^


lg fishbone22
 
Du könntest es mit Output-Buffering abfangen und das Block-Element drumbasteln, halte ich aber für unschön :)
 
in wie fern unschön? hab ich noch nie was von gehört... seh ich mir mal an. birgt das denn risiken?


lg fishbone22


EDIT: könnte man das nicht eventuell so wie bei dem BBCode ( in html = <u>) machen also wenn der ein <input type="hidden" blablabla also wenn das script merkt das dieses verhaltensmuster auftritt, dass es das dann ersetzt durch den selben code + blockelement...
 
Zuletzt bearbeitet:
Hallo,

irgendwo in der php.ini kann man die Ersetzung für die Session steuern, such also mal in diese Richtung.
 
Ah ich habs selber herausgefunden. einfach diesen Code hinzufügen (für alle die das Problem auch hatten)

PHP:
ini_set( 'arg_separator.output' , '&' );
ini_set( 'url_rewriter.tags' , 'a=href,area=href,frame=src,input=src,fieldset=' );


lg fishbone22
 
in wie fern unschön? hab ich noch nie was von gehört... seh ich mir mal an. birgt das denn risiken?
Naja, etwas erst ausgeben, diese Ausgabe abfangen und dann noch manipulieren find ich halt unschön :)

EDIT: könnte man das nicht eventuell so wie bei dem BBCode ( in html = <u>) machen also wenn der ein <input type="hidden" blablabla also wenn das script merkt das dieses verhaltensmuster auftritt, dass es das dann ersetzt durch den selben code + blockelement...

Genau das war meine Idee. Mit den OB-Funktionen den Output abfangen, mit nem kleinen Regex das input-Feld suchen und ne div drumbasteln, anschließend wieder ausgeben.

Bei deiner Variante musst du halt selbst dafür sorgen, dass die Sessionid übertragen wird.