php - 使用重定向到 login.php 的 session 锁定页面

标签 php mysql session redirect

我在使用 session 锁定页面时遇到问题,我必须这样做 如果没有登录则让它重定向到login.php

这是我的脚本,我已经尝试过很多脚本,但不知怎的,它们都不起作用

<?PHP
include("include/session.php");
?>

<?PHP
if(isset($_SESSION['logged_in'])){
   unset($_SESSION['logged_in']);
else
{
    header ("location: login.php"); 
}

?>

<?PHP
if($session->logged_in){
?>

这段代码有时确实有效,但它没有将我重定向到login.php

这是首页和每个子页面上锁定页面的代码 因此尝试访问它应该重定向到login.php

有什么建议吗?

最佳答案

要么你的代码有很多问题,要么我误解了这个问题_

  • if(isset($_SESSION['logged_in'])){ 以不平衡的括号结尾
  • 如果您从 session 中读取登录状态,为什么要unset()登录状态?
  • if($session->logged_in)if(isset($_SESSION['logged_in'])) 相同吗?

无论如何,我的建议是

  • header ("location: login.php"); 更改为 header ("Location: login.php");,某些浏览器可能对大写字母比较挑剔
  • 减少困惑

<?php
include("include/session.php");
if(isset($_SESSION['logged_in']))
{
?>

<!-- whatever you wanna do -->


<?php
}
else
{
    header ("Location: login.php"); 
    exit;
}
?>

并绝对确保 include/session.php 中没有输出任何内容(尤其是没有换行符或空格)

关于php - 使用重定向到 login.php 的 session 锁定页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9455056/

相关文章:

mysql - sql中的SUM函数返回错误计算的值

java - PreparedStatementexecute() 不影响数据库

jsf - 获取客户端使用jsf中的同一 session 发送请求的最后访问时间?

php - 如何在 laravel 4 中设置表单输入所需的属性

php - 从类外部访问类属性

php - 如何构造生成html的php

MySql ADDDATE() 查询 : Adding two dates with 30 0r 60 days of period

python - Django 中的 session 数据损坏

Django session 在 View 之外

PHP Laravel 读取 csv