Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 重定向到登录页面,除非用户已登录_Php_Mysql_Session_Url Redirection - Fatal编程技术网

Php 重定向到登录页面,除非用户已登录

Php 重定向到登录页面,除非用户已登录,php,mysql,session,url-redirection,Php,Mysql,Session,Url Redirection,我正在尝试设置一个页面,该页面仅在用户登录后才可访问,否则将重定向到登录页面 我有下面的函数,这是我从《PHP和mySQL简易入门》一书中得到的,但是当没有用户登录时,它只是挂起,不重定向。我已经检查了转录错误,没有发现任何问题 我也尝试过直接使用header(),我也尝试过使用ob\u start(),以防报头没有首先发送时出现问题-但我仍然无法让它工作,也看不出问题所在。任何指导都将不胜感激 <?php SESSION_START(); function load($

我正在尝试设置一个页面,该页面仅在用户登录后才可访问,否则将重定向到登录页面

我有下面的函数,这是我从《PHP和mySQL简易入门》一书中得到的,但是当没有用户登录时,它只是挂起,不重定向。我已经检查了转录错误,没有发现任何问题

我也尝试过直接使用
header()
,我也尝试过使用
ob\u start()
,以防报头没有首先发送时出现问题-但我仍然无法让它工作,也看不出问题所在。任何指导都将不胜感激

<?php
    SESSION_START();

    function load($page='login.php') {
        $url='http://'.$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']);
        $url=rtrim($url,'/\\');
        $url.='/'.$page;
        header("Location:$url");
        exit();
    }

    if(!isset($_SESSION['userid'])) {
        load('login.php');
    }

    include_once('includes/header.html');
    /* ...rest of webpage...*/
    include_once('includes/footer.html');
?>

您在下面的行中有语法错误:

if(!isset($_SESSION('userid'))) {
改为

if(!isset($_SESSION['userid'])) {

$\会话是数组而不是函数

您在下面的行中有语法错误:

if(!isset($_SESSION('userid'))) {
改为

if(!isset($_SESSION['userid'])) {

$\会话是数组而不是函数

您在下面的行中有语法错误:

if(!isset($_SESSION('userid'))) {
改为

if(!isset($_SESSION['userid'])) {

$\会话是数组而不是函数

您在下面的行中有语法错误:

if(!isset($_SESSION('userid'))) {
改为

if(!isset($_SESSION['userid'])) {

$\会话是数组而不是函数

$\u会话('userid')
需要是
$\u会话['userid']
$\u会话('userid')
需要是
$\u会话['userid']
$\u会话('userid')
需要是
$\u会话['userid']
$\u会话('userid')
需要是
$\u会话['userid']
?谢谢@ashique-c-m@Ram Sharma和@TiiJ7。非常抱歉,我已将原始问题代码更新为使用
$\u SESSION['userid']
…但是这只是stackoverflow中的一个输入错误-很遗憾,重定向仍然无法工作。你能看到我遗漏的任何其他问题吗?这应该是可行的,只需打印会话并调试。打印(美元会话);谢谢:)我检查了我的实际程序,发现如果我直接在代码中定义函数(如我问题中的代码),而不是使用
require_once('includes/functions.php'),它就能工作。我想一个
require()
会中断
header()
…谢谢@asique-c-m@Ram Sharma和@TiiJ7。非常抱歉,我已将原始问题代码更新为使用
$\u SESSION['userid']
…但是这只是stackoverflow中的一个输入错误-很遗憾,重定向仍然无法工作。你能看到我遗漏的任何其他问题吗?这应该是可行的,只需打印会话并调试。打印(美元会话);谢谢:)我检查了我的实际程序,发现如果我直接在代码中定义函数(如我问题中的代码),而不是使用
require_once('includes/functions.php'),它就能工作。我想一个
require()
会中断
header()
…谢谢@asique-c-m@Ram Sharma和@TiiJ7。非常抱歉,我已将原始问题代码更新为使用
$\u SESSION['userid']
…但是这只是stackoverflow中的一个输入错误-很遗憾,重定向仍然无法工作。你能看到我遗漏的任何其他问题吗?这应该是可行的,只需打印会话并调试。打印(美元会话);谢谢:)我检查了我的实际程序,发现如果我直接在代码中定义函数(如我问题中的代码),而不是使用
require_once('includes/functions.php'),它就能工作。我想一个
require()
会中断
header()
…谢谢@asique-c-m@Ram Sharma和@TiiJ7。非常抱歉,我已将原始问题代码更新为使用
$\u SESSION['userid']
…但是这只是stackoverflow中的一个输入错误-很遗憾,重定向仍然无法工作。你能看到我遗漏的任何其他问题吗?这应该是可行的,只需打印会话并调试。打印(美元会话);谢谢:)我检查了我的实际程序,发现如果我直接在代码中定义函数(如我问题中的代码),而不是使用
require_once('includes/functions.php'),它就能工作。我想
require()
会中断
头()
。。。