我知道使用GET方法的结果页面可以被标记,而使用POST的结果页面不能.我也知道GET方法的限制.
现在假设我想构建一个搜索引擎,默认情况下使用GET允许用户书签,但当搜索短语的长度超过限制时,切换到POST.在服务器端,我使用$ _GET或$ _POST,具体取决于设置的内容.
这可行吗?
如果不是,为什么?
如果是,请提供简要说明.
谢谢
Pek*_*ica 13
这是可行的,没问题.
还有就是$_REQUEST那个合并GET,POST数组,cookie值,但更好的办法是处理你的脚本中手动GET和POST.
只需让你的引擎检查两者$_GET["variable"],$_POST["variable"]并使用任何设置.如果在两种方法中都设置了变量,则需要确定要优先选择哪一个.
这两种方法之间的唯一显着的区别是,一个GET参数有大小限制取决于浏览器和接收Web服务器(POST有局限性太多,但他们通常在几兆字节的范围).我认为一般规则是GET字符串不应超过1024个字符.
nic*_*ckf 10
以下是如何在一个中使用GET和POST:
<form action="myfile.php?var1=get1&var2=get2&var3=get3" method="post">
<input type="hidden" name="var1" value="post1" />
<input type="hidden" name="var2" value="post2" />
<input type="submit" />
</form>
Run Code Online (Sandbox Code Playgroud)
PHP:
print_r($_REQUEST);
// var1 = "post1"
// var2 = "post2"
// var3 = "get3"
print_r($_GET)
// var1 = "get1"
// var2 = "get2"
// var3 = "get3"
print_r($_POST);
// var1 = "post1"
// var2 = "post2"
Run Code Online (Sandbox Code Playgroud)