2017-02-04 15 views
0

サインインブートストラップテーマでログインとログアウト機能を試しましたが、うまくいきました。しかし以前に使用したものと同じコードを使用すると、他のテンプレートのセッションをログアウトできません。私はインターネットで見つかったすべてのソリューションをすべて試しました。ログアウトリンクをクリックすると空白のページが表示されます。PHPでセッションをログアウトできません

login.php

<?php 
session_start(); 
if (!empty($_SESSION['login_user'])) { 
header('location:index.php'); 
} 
?> 
---html code--- 

<?php 

define('DB_SERVER', 'localhost'); 
define('DB_USERNAME', 'root'); 
define('DB_PASSWORD', ''); 
define('DB_DATABASE', 'foodchain'); 
$db = mysqli_connect(DB_SERVER,DB_USERNAME,DB_PASSWORD,DB_DATABASE); 

if($_SERVER["REQUEST_METHOD"] == "POST") { 

    $myusername = mysqli_real_escape_string($db,$_POST['email']); 
    $mypassword = mysqli_real_escape_string($db,$_POST['password']); 


    $sql = "SELECT email,password FROM user_register WHERE email='$myusername' and password = '$mypassword'"; 
    $result = mysqli_query($db,$sql); 
    $row = mysqli_fetch_array($result,MYSQL_ASSOC); 


    $count = mysqli_num_rows($result); 

    if($count == 1) { 

    $_SESSION['login_user'] = $myusername; 

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

    $logmsg = "Invalid Username or Password"; 


    } 
} 
?> 

check_login.php

<?php 
session_start(); 
    if (!isset($_SESSION['login_user']) || empty($_SESSION['login_user'])) { 
header('location:login.php'); 
} 
?> 

logout.php

<?php 
session_start(); 
session_destroy(); 
header("Location:login.php"); 
die(); 
?> 

index.phpの

<?php 
include('check_login.php'); 
?> 

その完璧に私はテンプレートサインインのbootsrapを使用するときに私は(いくつかのウェブサイトからダウンロード)テンプレート、またはを使用しないときの作業。

+0

あなたはコードを投稿する場合、私はそうでない場合、これは私が思うに診断するにはあまりにも曖昧で、それを上に見て幸せになります。 –

+0

白いページを取得している場合は、何らかのエラーがあり、エラー表示が無効になっていることを意味します。エラー表示を有効にすることで正確なエラーを取得する必要があります。あなたのPHPファイルでは 'error_reporting(E_ALL);を使用します。 ini_set( 'display_errors'、1); ' –

答えて

0

あなたは実際に、いくつかのソースコード、試したことへのリンク、以前に試したこと、受け取ったエラーなどを私たちに提供する必要があります。私が集めることができるものから、あなたはログアウトを探していますセッションを使用しているページ?ここに私が持っているものがあります。

<?php 
session_start(); 
session_destroy(); 
header('Location: ..'); 
?> 
+0

私の質問を編集しました@Sims。ご回答いただきありがとうございます。 – Abhishek

+0

問題ありません。それが助けられたら、答えとしてそれを受け入れてください。 :) –

0

キー部分は空の配列に$ _SESSIONを設定しています。

http://php.net/manual/en/function.session-destroy.phpから:

<?php 
// Initialize the session. 
// If you are using session_name("something"), don't forget it now! 
session_start(); 

// Unset all of the session variables. 
$_SESSION = array(); 

// If it's desired to kill the session, also delete the session cookie. 
// Note: This will destroy the session, and not just the session data! 
if (ini_get("session.use_cookies")) { 
    $params = session_get_cookie_params(); 
    setcookie(session_name(), '', time() - 42000, 
     $params["path"], $params["domain"], 
     $params["secure"], $params["httponly"] 
    ); 
} 

// Finally, destroy the session. 
session_destroy(); 
?> 
+0

@Ninoありがとうございます。私は、ダウンロードされたテンプレートにバンドルされているすべてのモバイル、スマートフォン、アプリのフォルダとhtaccessファイルを削除するだけで問題を解決しました。私は最終的に数週間後に解決策を見つけました。 – Abhishek