我有一个页面,其中包含一个显示确认模式的链接。点击确定后,模态将转到page.php?delete = id。问题是当我销毁当前会话并导航到页面(page.php?delete = id)时,用户将被删除,之后我将被重定向到登录页面,而我在删除代码之前调用auth.php。我通过使用(page.php修复)找到了解决方法,但我的问题是如何防止这种情况,因为我在代码之前调用了auth.php。
page.php代码
<?php
require_once("inc/auth.php");
require_once("inc/database.php");
$db = Database::getInstance();
$sq = "";
if (isset($_GET["delete"])) {
$db->query("DELETE FROM `users` WHERE `id` = " . (int)$_GET['delete']);
}
?>
HTML HERE
page.php fix
<?php
require_once("inc/auth.php");
require_once("inc/database.php");
if ($_SESSION["authorized"]) {
$db = Database::getInstance();
$sq = "";
if (isset($_GET["delete"])) {
$db->query("DELETE FROM `users` WHERE `id` = " . (int)$_GET['delete']);
}
}
?>
HTML HERE
auth.php代码
<?php
require_once(dirname(dirname(__FILE__)) . '/inc/config.php');
session_start();
if (!(($_SESSION["username"] == P_USERNAME) && ($_SESSION["password"] == P_PASSWORD))) {
session_destroy();
header('Location: index.php');
}
?>