15

# Forms

- Use hint ACCEPT-CHARSET="utf-8" on both the FORM element and the FORM controls.
- <FORM METHOD=GET ... > and
  <FORM METHOD=POST ENCTYPE=application/x-www-form-urlencoded ... >
  - Lacking a specification of a character encoding scheme, the "%HH" notation has no well-defined meaning.
  - Browsers send back in the encoding they received. Don't rely on that.
- <FORM METHOD=POST ENCTYPE=multipart/form-data ... >
  - Every form element is a separate body of a multipart MIME body.
  - Not all your user-agents support multipart POST.
  - Patch CGI.pm and if it works out well, Doug will hopefully fix Apache::Request too.
  - Don't rely on the headers you get.
- Use heuristics.