Hallo,
ab Opera 9 existiert die Möglichkeit das im Browser angezeigte Dokument validieren zu lassen. Dafür wird der Quelltext per POST an den Validator verschickt. Das hat den großen Vorteil das auch lokale Dokumente ohne Upload validiert werden können.
Leider verarbeiten der W3C-Validator und Validome diese Daten falsch, da sowohl der MIME-Type als auch der Charset keine Beachtung findet.
Dies möchte ich nun bei Validome ändern, habe dabei aber ein großes Problem das ich nicht „genackt“ bekomme.
Hier mal der POST-Request von Opera:
POST /validate HTTP/1.1
User-Agent: Opera/9.00 (X11; Linux i686; U; en)
Host: www.validome.org
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: de,en;q=0.9
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
TE: deflate, gzip, chunked, identity, trailers
Content-Length: 5167
Content-Type: multipart/form-data; boundary=----------Mw0diRC5NaQNPRX9iksyxN
Connection: keep-alive
------------Mw0diRC5NaQNPRX9iksyxN
Content-Disposition: form-data; name="uploadFile"; filename="validate.xml"
Content-Type: application/xhtml+xml; charset=utf-8
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
...
Ich komme zwar ganz leicht an den übergebenen Quelltext des Dokumentes, jedoch nicht an den Header dieser Daten (Content-Disposition: form-data; name="uploadFile"; filename="validate.xml"
Content-Type: application/xhtml+xml; charset=utf-8).
Existent in PHP eine Funktion o.ä. um an diesen Header zu kommen?
Notfalls könnte ich auch auf Perl zurückgreifen, währe aber nicht meine Wunschlösung.
Viele Grüße
Thomas Mell