您好,我有关于使用枚举 1 和 0 更新 mysql 数据库字段的问题,当用户登录时将其更改为 1 但是当用户注销时我尝试这样做但它不起作用... 我还尝试将其设为按钮,如果按下 btn 则执行某些操作,然后转到 logout.php,但它没有用......
所以我的代码是这样的......
<?php include_once('connect.php');
$logger = $_SESSION["login"];
session_start();
session_unset();
session_destroy();
$mysqli = "UPDATE table SET field='0' WHERE email='$logger'";
if(mysqli_query($con, $mysqli)){
header("Location: index.php");}else echo "Something went wrong!";
?>
最佳答案
你的问题与其他两个答案无关,@Gopal 指出你应该在取消设置 session 后销毁,但是你在取消设置 session 之前设置了变量。 @Marmik 也没有解决问题。
你的问题出在这里:
$logger = $_SESSION["login"];
session_start();
您正在尝试在实际开始 session 之前访问 session 变量。这将为您提供一个空白的 $logger
,如果您使用 echo $logger
,您可能会发现它。
那么,我们如何解决这个问题。本质上,我们只是交换两行,所以 session_start()
在我们尝试访问 session 变量之前。
session_start();
$logger = $_SESSION["login"];
如果失败,您可能需要检查 $_SESSION["login"]
是否已在第一时间快速设置 echo $_SESSION['login'];
在 session_start();
祝你好运!
关于php - 如何在 session 销毁时更新 mysql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35518742/