2016-05-22 2 views
0

機密情報のあるウェブページを持っており、ログアウトしたユーザにはアクセスしないようにしています。ユーザーはログインしているかどうかを確認します。これは私が今持っているコードです。ユーザがログインしているかどうかを確認し、それに応じて別のページが必要です

if(!isset($_SESSION['user']) || isset($_SESSION['user'])=="") 
{ 
    require('menu.php'); 
} 
if else(isset($_SESSION['user']) || isset($_SESSION['user'])!="") 
{ 
    require('homemenu.php'); 
} 

しかし、どのように進んでも、メニューは表示されません。 これを行う方法に関するご意見はありますか?

ありがとうございました。

+0

'if else'または' elseif'ですか? – Rehmat

答えて

1

ます(登録セッション中に、現在のページ上の)ログインページの両方で、あなたのページの上部にsession_start()を追加することで、セッションを開始したことを確認してからのこの短縮版を使用条件:

if(isset($_SESSION['user']) AND $_SESSION['user'] != '') { 
    require ('homemenu.php'); 
} else { 
    require ('menu.php'); 
} 
+0

私は最初に 'session_start()'を持っていましたが、問題はif文でした。なぜこの作品は、私が書いたものではないのですか? – Grymfogel1

+0

コードの5行目を確認してください。単純に 'else'を使用して条件を削除する必要があります。 – Rehmat

+0

さて、なぜコードエラーになるのですか?私は特定の条件を持つことができなければならないので、ユーザーがログインしているか、ログインしていないか、エラーが表示されるようにしてください。私はちょうど 'if else'文がこの場合にはうまくいかない理由を理解していません。 – Grymfogel1

0
session_start(); 

if(!isset($_SESSION['user']) || $_SESSION['user'] == "") 
{ 
    require('menu.php'); 
} 
else if(isset($_SESSION['user']) || $_SESSION['user'] != "") 
{ 
    require('homemenu.php'); 
} 

これを試してみてください:

+0

残念ながら、うまくいきませんでした。いずれの場合もメニューは表示されません。 – Grymfogel1

+0

ファイルの先頭に 'session_start()'を追加してください。 –

関連する問題