[EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:

> Odds are very very good that the user agent will take you to
> .../test.html?test=a+b+c
> rather than I would have thought would be the correct (per cited RFCs)
> .../test.html?test=a%20b%20c
> 
> (tested in IE 6 and Mozilla Firefox 0.8)

Hmm, actually that is according to the HTML spec.  For example, 
see http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4 
:

|  Control names and values are escaped. Space characters are
|  replaced by `+', and then reserved characters are escaped as
|  described in [RFC1738], section 2.2: Non-alphanumeric
|  characters are replaced by `%HH', a percent sign and two
|  hexadecimal digits representing the ASCII code of the
|  character.

The RFCs mentioned earlier define the structure of URLs, but 
they don't talk about the construction of query strings.  The 
HTML spec defines how user agents should do that.

Escaping a filename that contains a space in order to construct 
a URL, rather than a query string, is a different situation, 
and there it definitely should be '%20', not '+'.

-- 
Keith C. Ivey <[EMAIL PROTECTED]>
Washington, DC

Reply via email to