Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何测试表单是post还是get?_Php_Symfony1 - Fatal编程技术网

Php 如何测试表单是post还是get?

Php 如何测试表单是post还是get?,php,symfony1,Php,Symfony1,我该怎么做?我有密码: public function executeListmatches(sfWebRequest $request) { $form_values = $request->getParameter('match_form', array()); if (isset($HTTP_POST_VARS)) { $gender_id = $form_values['gender_id2']; $age1 = $f

我该怎么做?我有密码:

 public function executeListmatches(sfWebRequest $request)
{
    $form_values = $request->getParameter('match_form', array());   
    if (isset($HTTP_POST_VARS))
    {
        $gender_id = $form_values['gender_id2'];
        $age1 = $form_values['age1'];
        $age2 = $form_values['age2'];
        $province_id = $form_values['id'];
    }
    else
    {
        echo $gender_id =  $request->getParameter('gender2');
        echo $age1 =  $request->getParameter('age1');
        echo $age2 =  $request->getParameter('age2');
        echo $province_id =  $request->getParameter('id');
    }
    $this->pager = $this->setupPager($gender_id,$age1,$age2,$province_id);  
    return sfView::SUCCESS;
}     
但是if行(isset($HTTP_POST_VARS))不正确
谢谢

您可以使用
sfWebRequest::isMethod($name)检查该方法


所以使用:
if($request->isMethod('POST'))

HTTP\u POST\u变量和HTTP\u GET\u变量都不推荐使用。您的第一个条件是使用POST数据

请注意,
$HTTP\u POST\u VARS
现在已被弃用,您应该使用
$\u POST
(虽然这不是问题的解决方案),为什么要这样做?对我来说似乎是个安全问题。您应该始终知道表单是post还是get。不知道表示您不知道输入来自何处。如果您接受第三方提交,您应该为这些提交制定规则。