2011-08-04 102 views
3
<form method="POST" action="/index?key=1"> 
<input type="text" name="another_key" value="2" /> 
</form> 

当我提出这样的形式,并试图获取GET参数与CGI->new->param('key')GET参数丢失?

它不工作..

能CGI工作时都GETPOST参数存在吗?

+0

我还没有和CGI的工作,但你为什么不带任何'GET'或'POST'定居。如果您正在执行一些查找操作,请使用GET,如果您要写入某个数据库,请使用POST。 – midhunhk

+0

@silverback,他总是在做POST。他只是想在URL中包含一些参数(就像在GET中那样)。没有规定说您的POST URL不能有查询组件。这里的问题是如何访问该查询组件中的参数。 – cjm

回答

5

对于POST请求,CGI的PARAM方法只会POST参数,但将提供URL中的“GET”参数的替代方法url_param。

这可以是文件上传非常有帮助;如果发布请求过大,它会完全抛弃,但是URL参数可以告诉你什么样的上传有人这样你就可以显示用户在正确的上下文的错误消息。

+0

'url_param'是否也适用于GET请求? – asker

+0

从未尝试过,文档没有说清楚。 – ysth