在php脚本的顶部,我有一个方法可以检查用户凭据,如果他们的SESSION变量与我们预期的不匹配,则会通过标头("Location:.."(将其重定向到登录区域。
下面我有一个方法,可以检测查询字符串参数,然后相应地运行mysql命令:
//内部看门人
if(!isset($_SESSION['ourprivatesessionvar'])) { header("Location: login.php");
//在我的脚本中
include('includes/gatekeeper.php');
/** SOME OTHER STUFF **/
if(isset($_GET['delete'])) {
mysql_query("DELETE FROM table WHERE id = '".mysql_real_escape_string($_GET['delete'])."' LIMIT 1");
}
总之,无论是否达到会话配额,delete命令都会运行。
重定向后使用exit;
或die;
终止脚本。
if(!isset($_SESSION['ourprivatesessionvar'])) {
header("Location: login.php");
exit;
}
if(!isset($_SESSION['ourprivatesessionvar'])) {
header("Location: login.php");
die;
}
或
if(!isset($_SESSION['ourprivatesessionvar'])) {
header("Location: login.php");
return false;
}
或
if(!isset($_SESSION['ourprivatesessionvar'])) {
header("Location: login.php");
exit;
}