Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.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
变量$logged在global.php中定义,未由index.php获取_Php_Mysql_Logged - Fatal编程技术网

变量$logged在global.php中定义,未由index.php获取

变量$logged在global.php中定义,未由index.php获取,php,mysql,logged,Php,Mysql,Logged,我试图在youtube香奈儿网站上跟随教程 当我遇到一些问题时。第一个是他在教程#5中的注销代码,由于更改了 if(session_is_registered() 我想我已经正确地用 if( isset($_SESSION[$username])){ 但是现在我得到一个错误,上面写着“注意:未定义的变量:登录到C:\xampp\htdocs\membership\index.php的第2行” 当我检查索引的第2行时,它显示我首先包括global.php <

我试图在youtube香奈儿网站上跟随教程

当我遇到一些问题时。第一个是他在教程#5中的注销代码,由于更改了

    if(session_is_registered()  
我想我已经正确地用

    if( isset($_SESSION[$username])){
但是现在我得到一个错误,上面写着“注意:未定义的变量:登录到C:\xampp\htdocs\membership\index.php的第2行”

当我检查索引的第2行时,它显示我首先包括global.php

    <?php include_once('scripts/global.php');
     if($logged==1){
    header("Location:home.php");
        exit();
    }
    ?>

然后我检查global.php,它有$logged=1,所以应该定义它……除非我遗漏了什么。我真的想在这里学到更多,所以如果能帮助我解释什么是错的,为什么是错的,我将不胜感激。。。。多谢各位

    <?php
    session_start();
    include_once('scripts/connect.php');

     //checking if the sessions are set
    if(isset($_SESSION['username'])){
               $session_username=$_SESSION['username'];
               $session_pass=$_SESSION['pass'];
               $session_id=$_SESSION['id'];

               //checking the member data
               $query=mysql_query("SELECT * FROM members WHERE
     id='id' AND password='pass' LIMIT 1")or die("Could not check member");
               $count_count=mysql_num_rows($query);
               if(count_count>0){
                //logged in stuff here
                $logged=1;

               }else{
                   header('Location:logout.php');
                   exit();
               }

               }elseif(isset($_COOKIE['id_cookie'])){
                $session_id=$_COOKIE['id_cookie'];
                $session_pass=$_COOKIE['pass_cookie'];

                //checking the member data
               $query=mysql_query("SELECT * FROM members WHERE    
    id='$session_id' AND password='$session_pass' LIMIT 1")or die("Could not check member");
               $count_count=mysql_num_rows($query);
               if(count_count>0){
                    while($row=mysql_fetch_array($query)){


    $session_username=$row['username'];
                    }
                   //create sessions
                   $_SESSION['username']=$session_username;
                   $_SESSION['id']=$session_id;
                   $_SESSION['pass']=$session_pass;

                //logged in stuff here
                    $logged=1;

               }else{
                   header('Location:logout.php');
                   exit();
                   }
               }



    ?>

$logged是在一个条件中设置的,因此回溯到了解您可能不会遇到随机重定向(让我想起了过去疯狂的“goto”日子),并最终导致$logged未设置。或者在包含的脚本开头初始化$logged。

logged
存储在like
$\u SESSION['logged']=1-然后您将能够从任何地方访问它(前提是您在其他页面上检查会话)-还了解php中的错误报告-实际上,当您使用
include
而不是
include_once
时会发生什么。没有任何变化。因此通过设置$logged=0;一开始global.php会解决这个问题吗?这似乎奏效了。非常感谢。