使用前测试$ _POST变量数组

时间:2015-12-12 19:30:13

标签: php

我通常在使用之前测试$ _POST变量值,这样可以正常工作。然而;既然$ _POST变量是一个我遇到问题的数组。我有一组6个复选框,都使用相同的名称数组。提交后,如果发现验证错误,我想记住并设置这些复选框。所以我尝试使用我用于其他字段的相同格式,但这次我收到语法错误,页面没有显示。这是我试过的代码:

<?php if(isset($_POST["projectOptions"])) && if(in_array('socialMedia', $_POST["projectOptions"])) echo ' checked="checked"';?>

这是我得到的错误:

PHP Parse error: syntax error, unexpected T_BOOLEAN_AND

谁能看到我做错了什么?或者,如果这不是正确的方法,那么请告诉我正确的方法。

感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

if中多个语句的正确语法如下:

if ($a && $b)

语法

if ($a) && if ($b)

无效

最后:

if(isset($_POST["projectOptions"]) && in_array('socialMedia', $_POST["projectOptions"])) 
    echo ' checked="checked"';

答案 1 :(得分:1)

<?php 
if(isset($_POST["projectOptions"]) && in_array('socialMedia', $_POST["projectOptions"])){
 echo ' checked="checked"';
}
?>
  • 您应该在不关闭括号If的情况下合并)子句。如果一切正确,则if语句为TRUE并执行。

为了清晰起见,我稍微扩展了上面的代码。