Scribit Edi Weitz dies 22/11/2007 hora 10:30:
So, to everyone on the list - what's your experience with semicolons as query string separators? Is this normal or esoteric? And, even more interesting, does any client out there actually use this convention?
I've seen them even recently, and they're quite useful, as said already (no escaping hell).
Seems OK, but it might break existing applications.
Any client-side application that doesn't send them to a server escaped is buggy, and any server-side application that parse the query string without using them a separator as well.
If I have a form with a text field name foo and type "a=1;b=2&c=3" in it, my current browser, Firefox, will send the following query string:
foo=a%3D1%3Bb%3D2%26c%3D3
In a PHP program, then $_GET['foo'] would evaluate as "a=1;b=2&c=3".
If arg_separator.input in php.ini contains #;, then it would parse the following query strng as defining two parameters, a and b:
foo=a%3D1%3Bb%3D2%26c%3D3;b=bar
Note that the default value is "&" and here is the commented line in my default php.ini:
#arg_separator.input = ";&"
Making Hunchentoot configurable on this point would be the best, I think.
Quickly, Pierre