繁体   English   中英

$ _REQUEST ['action']!='foo'在if语句中不起作用

[英]$_REQUEST['action'] != 'foo' don't work in an if statement

我下面的功能:

public function output_berater(){
    if($_REQUEST["action"] != "berater_formular_suche" || $_REQUEST["action"] != "thema_formular_suche"){
        print_r($_REQUEST["action"]);           
    }
    return $output;
}

如果我发送带有隐藏字段berater_formular_suchethema_formular_suche的表单,则print_r 不应显示在屏幕上。

我想!=说' if not '?!

$_REQUEST和if语句可能有一些$_REQUEST

有人可以解释一下为什么我的print_r显示吗?

编辑:

如果我提交表格:

输出$ _REQUEST

Array
(
    [action] => berater_formular_suche
    [berater] => klaus-testname
)

如果我不提交表格:

输出$ _REQUEST

空数组。

您必须使用&&而不是||

 if($_REQUEST["action"] != "berater_formular_suche" && $_REQUEST["action"] != "thema_formular_suche"){

(可选)您可以加载到数组中,然后轻松检查:

$possible_values = ["berater_formular_suche","thema_formular_suche"];
if(!in_array($_REQUEST['action'],$possible_values)) { // Check if your posted values is not in array
     print_r($_REQUEST["action"]); 
}

我想你可以像这样使用它

public function output_berater(){
    global $_REQUEST;
    if($_REQUEST["action"] != "berater_formular_suche" || $_REQUEST["action"] != "thema_formular_suche"){
        print_r($_REQUEST["action"]);           
    }
    return $output;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM