3

次のHTMLコードがあります。login.php と logout.php の 2 つの php ファイルがあります。ユーザーが初めて私のページにアクセスしたときに、ログイン リンクを見てもらいたいと思います。ログインをクリックした後(login.phpファイルで処理します)、そのログインリンクをログアウトに変更したいと思います(そのlogout.phpファイルをクリックすると処理されます)

次のコードで、ログイン リンクとログアウト リンクを動的に変更するにはどうすればよいでしょうか? 現在、ログインとログアウト用に 2 つの異なるリンクを用意していますが、これはお勧めできません。

<header class="group">
    <nav class="group">         
        <ul>
          <li><a href="register.php" title="">Register</a></li>
          <li><a href="login.php" title="">Login</a></li>   
              <li><a href="logout.php" title="">Logout</a></li>             
        </ul>
    </nav>
</header>
4

4 に答える 4

4

これを試して。

$logged_userユーザーがログインしているかどうかを識別する変数を設定する必要があります

<header class="group">
<nav class="group">         
    <ul>
        <?php if ($logged_user) { ?>
            <li><a href="logout.php" title="">Logout</a></li>             
        <?php } else { ?>
            <li><a href="register.php" title="">Register</a></li>
            <li><a href="login.php" title="">Login</a></li>   

        <?php } ?>
    </ul>
</nav>

于 2013-11-01T06:06:00.143 に答える
2

ユーザーがログインしているかどうかを確認するためにセッションを使用していると仮定しています。そうでない場合は、セッション変数を作成し、ログイン後に設定します。ログアウト時にセッション変数をクリアします。だからあなたはチェックすることができます

if(isset($_SESSION['logged_in'])){
//your logout link
}else{
//your login link
}
于 2013-11-01T06:10:41.737 に答える
1
 <?php 
        if ($signout) 
        { 
            echo "<li><a href=logout.php >Logout</a></li>";
        } 
        else 
        { 
            echo "<li><a href=register.php >Register</a></li>";
            echo "<li><a href=login.php >Login</a></li>";
        } 
?>
于 2013-11-01T06:13:23.057 に答える
0
<?php 
    if(isset($_SESSION['user_id'])) { 
        echo "<form method='POST' action='".userLogout()."'>";  ?>
            <li><button type="submit" name="userlogout" id="logout-button" class="button-logout">LOGOUT</button></li>

<?php } else { ?>
        <li><a href="login">LOGIN</a></li>
    </form>
<?php }
?>
于 2017-03-05T10:58:44.550 に答える