German characters not correct in output webformAddison Phillips [wM] wrote:
> When you do a form submit (POST or GET of data to the server),
> the browser encodes the characters being sent using the character
> encoding that the page uses.

Not necessarily: the HTML form can specify the encoding that the
browser should use when submitting the form data to the server.

Most problems come when this is not explicitly indicated as an
attribute of the form, so that browsers determine a default encoding
to use: normally this should be the same as the current encoding
of the HTML page. But some other browsers simply use a
ISO-8859-1 default, or a UTF-8 default.

Solution: specify explicitly the encoding to use as an attribute of the
HTML form, and make sure it is the same as the HTML page.
Then be ready to accept that encoding in your server. Note that
browsers will normally specify the encoding with which the form data
was submitted. Look at HTTP headers that come along with the
POST request.

Note also that if your form uses the "GET" method with URL-encoding,
it is strongly recommanded that you encode the form data using the
same encoding recommanded for URLs (UTF-8) before URL-encoding
is applied (transformation of non-ASCII characters into sequences of
%xx). This means that your HTML form page will also need to be encoded
with UTF-8.

If your form page uses ISO-8859-1, then specify explicitly the ISO-8859-1
encoding as the one to use for submitting forms, as an explicit attribute of
your <form> element. But then visitors won't be able to send other
characters
than ISO-8859-1 in their form data, whever the form method is GET with
URL-encoding, or POST in standard form-data format.


Reply via email to