Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.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-注意:未定义的索引:header.PHP上的$\u SESSION[';login';]_Php - Fatal编程技术网

PHP-注意:未定义的索引:header.PHP上的$\u SESSION[';login';]

PHP-注意:未定义的索引:header.PHP上的$\u SESSION[';login';],php,Php,我的header.php上有这个错误,它包含了导航栏的所有html/引导 <?php if($_SESSION['login']) { ?> <ul class="nav navbar-nav"> <li><a href="dashboard.php">Dashboard</a></li> <li&g

我的header.php上有这个错误,它包含了导航栏的所有html/引导

<?php
        if($_SESSION['login']) {
        ?>
            <ul class="nav navbar-nav">
                <li><a href="dashboard.php">Dashboard</a></li>
                <li><a href="settings.php">Settings</a></li>
            </ul>
            <ul class="nav navbar-nav navbar-right">
                <p class="navbar-text">Hello, <?php $name; ?></p>
                <li><a href="logout.php">Log Out</a></li>
            </ul>
        <?php
        } else {
        ?>
            <ul class="nav navbar-nav navbar-right">
                <li><a href="login.php">Log In</a></li>
            </ul>
        <?php
        }
        ?>

    您好

它一直显示在我的导航栏上,但效果很好:

“注意:未定义索引:在第36行的C:\xampp\htdocs\hotel sys\includes\header.php中登录”


它只是不断地显示那个通知。如何解决此问题?

首先,您应该检查会话变量是否已启动

if(isset($_SESSION['login'])) {
    // Your code
}

首先,您应该检查会话变量是否已启动

if(isset($_SESSION['login'])) {
    // Your code
}

确保页面顶部有
session\u start()
,然后替换

<?php 

 if($_SESSION['login']) {
 ... 
 }
?>

由此

<?php 
 if(isset($_SESSION['login']) && $_SESSION['login']) 
 {
 ...
 }
?>

确保页面顶部有
会话启动()

<?php 

 if($_SESSION['login']) {
 ... 
 }
?>

由此

<?php 
 if(isset($_SESSION['login']) && $_SESSION['login']) 
 {
 ...
 }
?>

您可以尝试以下更新的代码

<?php
        if(isset($_SESSION['login'])) {
        ?>
            <ul class="nav navbar-nav">
                <li><a href="dashboard.php">Dashboard</a></li>
                <li><a href="settings.php">Settings</a></li>
            </ul>
            <ul class="nav navbar-nav navbar-right">
                <p class="navbar-text">Hello, <?php $name; ?></p>
                <li><a href="logout.php">Log Out</a></li>
            </ul>
        <?php
        } else {
        ?>
            <ul class="nav navbar-nav navbar-right">
                <li><a href="login.php">Log In</a></li>
            </ul>
        <?php
        }
        ?>

    您好


您可以尝试以下更新的代码

<?php
        if(isset($_SESSION['login'])) {
        ?>
            <ul class="nav navbar-nav">
                <li><a href="dashboard.php">Dashboard</a></li>
                <li><a href="settings.php">Settings</a></li>
            </ul>
            <ul class="nav navbar-nav navbar-right">
                <p class="navbar-text">Hello, <?php $name; ?></p>
                <li><a href="logout.php">Log Out</a></li>
            </ul>
        <?php
        } else {
        ?>
            <ul class="nav navbar-nav navbar-right">
                <li><a href="login.php">Log In</a></li>
            </ul>
        <?php
        }
        ?>

    您好


表示未设置“登录”。如果(isset($\u SESSION['login'])表示未设置“login”,则可以这样检查。如果(isset($\u SESSION['login'])不需要第二个条件,您可以这样检查$_会话['login']取决于,如果他将
login
设置为true,如果用户登录,则在注销时设置为false,则不需要第二个条件$_会话['login']取决于,如果他将
login
设置为true,如果用户已登录,则在注销时设置为false,则需要