当我有一个带有一个变量的 url 时:www.mysite.com/animals.php?pet=dogs
我会检查:
if (!isset($_GET['pet']) || empty($_GET['pet']) || ($pet_true === false)){
header('Location: error.php');
exit();
} echo 'list of dogs';
当宠物未设置或为空或为假时,我会得到重定向,所以它可以工作。
但我想添加第二个变量:www.mysite.com/animals.php?pet=dogs&breed=collie
并进行检查:
- 如果没有设置品种或为空或为假:重定向到错误页面。
- 如果 url 是:
?pet=dogs&madeup
: 重定向到错误页面。
我以为我可以进行以下检查:
if (!isset($_GET['breed']) || empty($_GET['breed']) || ($breed_true === false)){
header('Location: error.php');
exit();
} else {
echo 'Collie info';
}
但是当 url 正确时,www.mysite.com/animals.php?pet=dogs
我仍然会重定向,因为没有设置品种。
我能想到的唯一解决方案是什么都不回应:
if (!isset($_GET['breed']) || empty($_GET['breed']) || ($breed_true === false)){
echo '';
} else {
echo 'Collie info';
}
但是现在?pet=dogs&
用户可以输入他想要的任何内容并且我不知道它是否安全之后,我认为重定向到错误页面会更好,但是有可能吗?