Php 如何检查是否收到$_GET?(菲律宾)

Php 如何检查是否收到$_GET?(菲律宾),php,url,get,undefined-index,Php,Url,Get,Undefined Index,我在这一页上有一张表格。它有太多的东西,比如复选框、文本字段和下拉列表。 但是当我没有选择其中一个复选框时,捕获表单的PHP页面会显示一个错误 例如: HTML代码: Checkbox 1<input type="checkbox" name="check1" value="on" /> Checkbox 2<input type="checkbox" name="check2" value="on" /> 如果在URL中选择并发送两个项目,则效果良好: localho

我在这一页上有一张表格。它有太多的东西,比如复选框、文本字段和下拉列表。 但是当我没有选择其中一个复选框时,捕获表单的PHP页面会显示一个错误

例如:

HTML代码:

Checkbox 1<input type="checkbox" name="check1" value="on" />
Checkbox 2<input type="checkbox" name="check2" value="on" />
如果在URL中选择并发送两个项目,则效果良好:

localhost/project/checkbox.php?check1=on&check2=on
但当我取消选择其中1个时,假设选中2,则URL如下所示:

localhost/project/checkbox.php?check1=on
$check1 = isset($_GET['check1']);
$check2 = isset($_GET['check2']);
它向我显示了一个错误,$check2是一个未定义的索引

但是如果没有选中复选框,我不希望它显示错误。我还尝试了一个
if
语句来检查我是否在URL中得到了它,但它不起作用

有没有办法先检查数据是否在URL中传递?因为我没有得到错误。 事实上,错误并不是主要问题,因为我得到了正确的结果,我知道我可以在php.ini中关闭错误报告,但这不是我想要做的。我想让它先检查是否有数据进来


谢谢…

如果(isset($\u GET['check2'])和($\u GET['check2'])为空($\u GET['check2']),
将在check2 GET参数存在且不为空的情况下执行检查。

复选框值仅在选中时注册。因此,您可以简单地执行如下检查:

localhost/project/checkbox.php?check1=on
$check1 = isset($_GET['check1']);
$check2 = isset($_GET['check2']);
$check1
$check2
现在将具有布尔值:

echo "Checkbox 1 one is " . ($check1 ? "checked" : "not checked") . PHP_EOL;
echo "Checkbox 2 one is " . ($check2 ? "checked" : "not checked") . PHP_EOL;

您可以使用just!empty($\u GET['check2'])@yes123:如果查询参数包含0或空格字符,则将失败。
$x=0;echo empty($x)“'y':'n'
将显示“y”。empty是一个极其愚蠢的函数。