如何在使用会话登录后更改导航栏,在登录之前显示该页面


How to change navbar after login using session and before login show that page

我尝试并想要(index.php)我的主页,它显示网页,但导航栏极右显示登录菜单。登录后,将创建会话并将导航栏从登录更改为注销。然后它的会话也访问剩余的页面。

login。

<?php ob_start(); ?>
<?php
 session_start(); 
 require_once 'dbconnect.php';
 if (isset($_SESSION['userSession'])!="") {
       header("Location: index.php");
      exit;
  }
 if (isset($_POST['btn-login'])) {
 $email = strip_tags($_POST['email']);
 $password = strip_tags($_POST['password']);
 $email = $DBcon->real_escape_string($email);
 $password = $DBcon->real_escape_string($password);
 $query = $DBcon->query("SELECT user_id, email, password FROM tbl_users                   WHERE email='$email' and password='$password'");
    $row=$query->fetch_array();
 $count = $query->num_rows; // if email/password are correct returns must be 1 row
if ($count==1) {
    $_SESSION['userSession'] = $row['user_id'];
header("Location: index.php");
} else {
    $msg = "<div class='alert alert-danger'>
                <span class='glyphicon glyphicon-info-sign'></span> &nbsp; Invalid Username or Password !
            </div>";
}
$DBcon->close();
}
?>

index . php

<?php 
 session_start();
 include_once 'dbconnect.php';
 if (!isset($_SESSION['userSession'])) {
    header("Location: login.php");
  }
 $query = $DBcon->query("SELECT * FROM tbl_users WHERE user_id=".$_SESSION['userSession']);
 $userRow=$query->fetch_array();
 $DBcon->close();
 ?>

导航条

<?php   
if(isset($_SESSION['userSession'])) {
    echo '<li class="dropdown"><a href="logout.php"><span>Log Out</span></a>   </li>';
} else {
    echo '<li class="dropdown"><a href="login.php"><span>Log In</span></a></li>';
} 
?>

这是我的编码。登录前无法打开index.php文件。现在我需要你的帮助,index.php文件打开没有登录,但导航栏显示登录菜单。一旦登录,它将取代注销菜单。

谢谢你提前回复我

希望对您有用。您可以制作如下所示的结构并进一步尝试。请找到注释行,以更好地理解代码。

索引文件:index.php

<?php
require('configuration.php'); #Database connection and other site configuration
if(!isset($_SESSION['userSession'])){
header("location:login.php"); #Redirection
die();
}
?>
<script language="javascript">
location.href='home.php';
</script>

头文件:Header .php

<?php  
if(isset($_SESSION['userSession'])) {
echo '<li class="dropdown"><a href="logout.php"><span>Log Out</span></a></li>';
} else {
echo '<li class="dropdown"><a href="login.php"><span>Log In</span></a></li>';
} 
?>

首页:Home .php

<?php
require('configuration.php'); #Database connection and other site configuration
if(!isset($_SESSION['userSession'])){ #Do login first if user is guest user
header("location:login.php"); #Redirection
die();
}
#Active session will perform ...
$id = $_SESSION['userSession'];
$query = $DBcon->query("SELECT * FROM tbl_users WHERE user_id=".$id);
while($userRow = $query->fetch_array();){
extract($userRow);
}
require_once("header.php"); #header file contains navigation bar
?>

登录页面:Login .php

<?php
require('configuration.php'); #Database and other site configuration
if(isset($_POST['btn-login'])){ #Login form submission and generate a $_SESSION['userSession']
....
}
require_once("header.php"); #header file contains navigation bar
?>
<!--Your login page form </ CODE> will be here -->