2016-10-12 15 views
1

私のホームページに私のホームページを表示したいのですが、navbarの極端な権利はログインメニューを表示します。ログイン後、セッションが作成され、navbarがログインからログアウトに変更されます。セッションアクセスの残りのページも表示されます。セッションを使用してログインした後、ログインする前にnavbarを変更するには、そのページを表示してください。

Login.php

<?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ファイルがログインせずに開くが、navbarはログインメニューを表示する必要があります。ログインすると、ログアウトメニューが置き換えられます。私にはあなた 事前返信用

おかげで

答えて

0

は、あなたはそれが役立つことを願っています。あなたは以下のような構造を作り、さらに試してみることができます。コードの理解を深めるためにコメント行を見つけてください。

あなたのインデックスファイル:

<?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> 

ヘッダファイルのindex.php: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 --> 
関連する問題