使用 URL 中错误的 $_GET 参数时出错

刺激性的

并且无法让它发挥作用。我想从 URL 获取变量,例如:

domain.com?region=STATE

if (empty($_GET)) {
    echo 'American';

}

else {
    $t = $_GET["region"];
    if ($t == "Texas") {
        echo "Texan";
    } elseif ($t == "California") {
        echo "Californian";
    } else {
        echo "American";
    }
}

这确实有效。但是,万一有错误的参数输入,例如:

domain.com?asdasd=随便

我收到一个错误:

“注意:未定义索引:第 19 行 test.php 中的区域”

您能告诉我如何防止出现此错误并基本上将其视为空变量并返回“美国人”吗?

我试过这段代码,但它不起作用:

if (empty($_GET)) {
    echo 'American';

}
elseif ($_GET != "region") {
    echo 'Anything Else';
}
else {
    $t = $_GET["region"];
    if ($t == "Texas") {
        echo "Texan";
    } elseif ($t == "California") {
        echo "Californian";
    } else {
        echo "American";
    }
}

即使 URL 为真:

domain.com?region=德克萨斯州

仍然在输出中得到“任何其他”。

登台

使用,isset(($_GET['region'])因为如果输入未定义的变量,它不会发出通知:

if (!isset($_GET['region'])) {
    echo 'American';
} else {
    $t = $_GET["region"];
    if ($t == "Texas") {
        echo "Texan";
    } elseif ($t == "California") {
        echo "Californian";
    } else {
        echo "American";
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用GET方法时,URL中的其他参数丢失

收银员抛出错误“URL (payment_method) 中提供的参数作为 GET 或 POST 参数重复。” 添加付款方式时

在 url 路径中传递多个路由参数时出错

如何使用Codeigniter消除URL中未使用的$ _GET参数?

toString()在使用传递参数时给出错误

使用Typescript在React中传递组件中的参数时出错

改造错误-缺少@GET URL或@Url参数

使用 React 在 axios 中传递参数时出错

paginate() 在使用 has() 时抛出错误而 get() 显示结果

如何使用URL中的路由参数执行axios get请求?

使用GET参数在Symfony 5中生成URL

使用afnetworking在GET方法的url中传递参数

使用python3.5中的aiohttp查询get URL的参数

如何使用jQuery更新URL中的get参数

无法识别的选项'-get-url'拆分参数列表时出错:找不到选项

PHP中的GET URL参数

使用string.gsub作为redis.call()中的参数时,redis中的Lua脚本给出错误

从 URL 读取 csv 时出错:functionert 协议版本中的错误

WebAPI - 在传递数组参数时使用 POST 来执行 GET 的工作。什么可能出错?

通过JQuery中的@ Url.Action向控制器发送参数时出错

在 PHP 中使用路由时在 URL 中传递参数

使用vuejs时如何在url中传递多个参数

当我使用sapply时,“ parse_url(url)中的错误:length(url)== 1不是TRUE”

如何使用GET方法以Laravel形式在URL中以加密格式传递GET参数?

Laravel:使用 get 参数处理旧 url

URL重写(如果使用GET参数)

当 URL 在 ReactJS + Rails 上具有动态参数时,axios 使用错误的 URL

使用 get() 时在 laravel 查询中返回错误 500

为什么在使用find / findmany时lumen / laravel抛出错误“传递的参数太少”?