0

我将表单元素保存到文件中,以下内容按预期工作。

$t_str .= "viewMandatory=".$_GET['viewMandatory'] ."\n";

但我需要的是,如果只设置了 $_GET,那么它应该附加到“t_str”字符串中。

如果没有从表单接收到 viewMandatory 的值,它应该什么也不打印。如何将此检查添加到上述语句中?

4

3 回答 3

5
if (!empty($_GET['viewMandatory'])){
$t_str .= "viewMandatory=".$_GET['viewMandatory'] ."\n";
}

在 292 个问题之后,您应该遇到了 empty() 函数。

于 2012-04-09T07:11:42.103 回答
1
$t_str .= (!empty($_GET['viewMandatory'])?$_GET['viewMandatory']:null;

这样你的代码更少,更容易阅读(至少对我来说,我喜欢简短的形式),但是每次请求页面时都会执行代码。龙的解决方案并非如此。

但是想想代码注入。在将 $_GET['viewMandatory'] 添加到您的字符串之前,以正确的方式过滤它!否则很容易注入不良代码,例如:

www.yourpage.com/page.php?viewMandatory=';BAD_CODE_HERE (or " instead of ')
于 2012-04-09T07:30:00.580 回答
1
Use php isset    


if (isset($_GET['viewMandatory'])){
$t_str .= "viewMandatory=".$_GET['viewMandatory'] ."\n";
}
于 2012-04-09T07:57:02.787 回答