今天提交一个表单,内容参考如下:

<form action="add.php?a=123&b=456">
    <input type="hidden" name='user_id' value="46" />
    <input type="hidden" name='user_name' value="snsgou" />
    ...
    <input type="submit" name='sub' value="提交" />
</form>

服务端死活获取不到 参数a参数b的值,,,通过Fiddler工具跟踪分析,发现提交过程走了GET方式,我本意是想POST提交的,再仔细一看,form节点少设置了 method属性,如果不主动设置的话,它的默认值为get,这下才知道问题所在了,,,得注意这个地方!!!希望以后别犯同样的错误!!!

 

恶补基础知识:

页面通过表单(form)向服务器提交数据的时候有两种形式,一个是POST,另一个是GET。两种的一个区别是GET会直接把数据附加在url的后面,而POST发送的数据放置在http包中。form的action属性就是提交数据的url地址,method属性可以指定是GET或POST。

需要注意的是如果采用GET方式,那么action url中参数都会被丢弃,提交时候只会把form中的数据拼接在url向服务器提交;但是POST的方式则不会这样,它会按照action指定的url进行提交数据,包含url后面跟着的参数和参数值。

 

注意: 不管是 get 还是 post 请求,url 中的参数,只能通过 $_GET (或 $_REQUEST) 方式 获取 !