[英]$_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_suche
或thema_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.