在this tutorial的processRequest
方法:PHP REST变量缺失
...
switch ($request_method){
case 'get':
$data = $_GET;
break;
case 'post':
$data = $_POST;
break;
...
时像$ _ POST发生(至少这种事情发生在我的测试设置$ _ GET变量被忽略 - 不一样的剧本,但想法是相似)。
我的测试用例:
//URL: `example.com/?iam=get`
//HTML:
<form action="?iam=get" method="post">
<input type="text" name="textinput" />
<input type="submit" />
</form>
印刷$data
要求给我:
Array ([iam] => get) //Opening the page without submit
Array ([textinput] => angry fabrik) //Submitting the form
(因为形式的行动,网址没有改变,但$ _ GET变量iam
缺失)
我经常使用$ _GET和$ _POST变量混合(AJAX请求,处理表单等)但现在我确信我忽略了一些东西。我的误解在哪里?
由于提前, FABRIK
是的,这很清楚,也可以工作,但在这种情况下,我可以忽略整个'switch'的东西:可以在没有开关的情况下填充这些变量这个教程有什么意义,以及它如何处理$ _POST和$ _GET? – fabrik 2010-10-20 13:16:41
我不认为混合get和post是“RESTful”。所以你没有t处理两者。 – 2010-10-20 18:41:52
REST是不是要处理url(作为参数)?仅仅因为所有的例子都是类似的:'GET请求到/ api/users - 列出所有用户','POST请求到/ api/users - 创建一个新用户'(顺便说一句,在这些例子中没有提供$ _GET变量。 ) – fabrik 2010-10-21 06:18:19