<?php
if((isset($_GET["r"])) == "en")
{
echo "<font color='#FF9900'>Right.</font>";
}
else
{
echo "";
}
?>
当“index.php?r = en”时显示正确。但是当我发送错误的值时,它也显示相同的结果。如“index.php?r = abc”或“index.php?r”。检查GET变量是否设置检查该值不起作用
如何解决这个问题?
<?php
if((isset($_GET["r"])) == "en")
{
echo "<font color='#FF9900'>Right.</font>";
}
else
{
echo "";
}
?>
当“index.php?r = en”时显示正确。但是当我发送错误的值时,它也显示相同的结果。如“index.php?r = abc”或“index.php?r”。检查GET变量是否设置检查该值不起作用
如何解决这个问题?
替换此行:
if((isset($_GET["r"])) == "en")
与
if((isset($_GET["r"])) && $_GET["r"] == "en")
非常感谢。有用。 – Subhajit
isset($_GET["r"])
是一个布尔运算符。如果这是真的,你正在做以下对比:
if(true == "en") ...
你想要的是:
if(!empty($_GET[r]) && $_GET[r] == 'en') ...
if(isset($_GET["r"]) && $_GET["r"] == "en")
{
echo "<font color='#FF9900'>Right.</font>";
}
else
{
echo "";
}
<?php
if(true === array_key_exists('r', $_GET) && 'en' == $_GET['r'])
{
echo "<font color='#FF9900'>Right.</font>";
}
else
{
echo "";
}
?>
'isset'返回TRUE或'FALSE'。 –
本网站不是为这些类型的问题而设计的。你应该问一些具体的问题,以反映你迄今为止所做的研究,以及你被卡住的地方。 –