为什么当我通过HTML格式的编码URL和GET方法传递参数时,URL编码参数会被删除?
e.g。设置:
<form action="process.php?hello=world" method="GET">
<input type="text" name="foo" value="bar">
<input type="submit">
</form>
结果:hello
中无法识别变量process.php
。
这是不好的做法吗?
这是PHP处理它的方式,还是与浏览器发送请求的方式有关?其他语言是否存在同样的问题?
答案 0 :(得分:7)
是的,这是不好的做法,因为它不起作用。
如果您想传入“隐藏的表单输入”,则必须使用隐藏的表单元素:
<input type="hidden" name="hello" value="world" />
正如rezzif在评论中指出的那样,你可以混合GET&amp; POST如此:
<form action="/something?foo=bar" method="POST">
<input type="text" name="baz" />
</form>
作为一般规则,我避免混合两者。我发现在我的表格行动中使用GET参数很奇怪。