|
Jorey Bump
list at joreybump.com
Tue Jul 6 01:56:40 EDT 2004
Jorey Bump wrote:
> mod_python user wrote:
>
>> I would like to be able to retrieve both _form_ and _query_
>> variables, even if they share the same name. e.g.
>>
>> <form method='post' action='/?name=NAME_ONE'> <input type='hidden'
>> name='name' value='NAME_TWO' /> <input type='submit' /> </form>
>>
>> It seems that when both a GET and POST variable share the same name
>> that the GET (query) variable always wins.
>>
>> Does anybody know how this might be accomplished?
>
> I don't know about servlets, but mod_publisher returns a list:
>
> ['NAME_ONE', 'NAME_TWO']
Duh. I mean mod_python.publisher. :P
> I don't know what causes this behaviour. Since only a POST request is
> sent, not a GET, I would expect any arguments in the URL to be
> ignored and only variables in the message body to be recognized.
FWIW, mod_php ignores the URL arguments:
Array ( [name] => NAME_TWO )
This seems more appropriate. A user shouldn't be allowed to mess with
POST data so easily.
If this gets fixed (assuming it's a bug), you can still use
req.unparsed_uri and do your own parsing. For example, use publisher and
create foo.py with this function:
def test(req):
return req.unparsed_uri
Then view the results at:
http://localhost/foo.py/test?name=something
Extract whatever you want from the resulting string.
|