3

ユーザーがログインしているときにログアウトボタンをWebサイトのすべてのページに表示し、誰かがログインしていない場合はそこに表示しないようにする方法はありますか?ある種のphpでうまくいくと思いますが、よくわかりません。私はこれらすべてに少し慣れていないので、詳細な説明をいただければ幸いです。

前もって感謝します!

4

6 に答える 6

3
  • $ _SESSION ['user']を作成し、ユーザーがログインしたときに入力します。

  • すべてのページに含めるphpページを作成し、このページでセッション変数$ _SESSION ['user']が設定されているかどうかを確認し、この条件に従ってリンクを表示します

     if(isset($_SESSION["user"])){ /*your logout button*/ } else { /*your login button*/ } 
    
于 2013-03-26T15:30:51.227 に答える
2

新しいセッションを開始し、セッション変数を設定することでそれを行うことができます。

ログインファイルでそれをする

<?php 
session_start();
if ($_SERVER['REQUEST_METHOD'] == 'POST' ) {

$username = trim(htmlentities(mysql_real_escape_string($_POST['username'])));
$password = trim(htmlentities(mysql_real_escape_string($_POST['password'])));
if (!empty($username) && !empty($password)) {
    $_SESSION['username'] = $username;
    echo "<br/> welcome ", $username;
    echo "<br/><a href='logout.php'>Logout</a>";

     } else {
    echo "Please enter correct username or password";
     }   
} else {
echo "Go to login page</br>";
echo "<a href='login.php'>Login</a>";
}

そして、すべてのページがそのセッション変数をチェックします

<?php 
session_start();
if(isset($_SESSION['username'])){
    echo "you logged in as </br>", $_SESSION['username'];
    echo "<br/><a href='logout.php'>logout</a>";
}else{
//your page stuff
}

ログアウトするには、セッションを破棄します

<?php 
session_start();
if (isset($_SESSION['username'])) {
   session_destroy();
   echo "<br> you are logged out successufuly!";
} 
   echo "<br/><a href='login.php'>login</a>";
 ?>

//セッションとCookieについてもっと読むことを忘れないでください。

于 2013-03-26T15:35:12.690 に答える
0

セッション管理について調べましたか? http://www.php.net/manual/en/book.session.php

于 2013-03-26T15:16:51.477 に答える
0

これは例です。他の方法があります。

ユーザーがログインしたら、$_SESSION['user']変数を作成します。

ログアウトボタンを表示する場合は、でセッション変数が設定されているか確認してくださいisset($_SESSION['user'])

于 2013-03-26T15:17:47.097 に答える
0

このような:

if (isset($_SESSION['uid']))
{
      if (!empty($_SESSION['uid']))
      {
        echo "<input type='button' value='Logout' onclick='logout_function();' />";
      }
}

Saludos xD

于 2013-03-26T15:18:18.060 に答える
0

このような何かがトリックを行う必要があります。

if(!empty($_SESSION["user"]))
{
/*
* logout button
*/
}
else
{
/*
* login code
*/
}
于 2013-03-26T15:18:26.107 に答える