Как изменить статус входа на выход после входа пользователя - PullRequest
0 голосов
/ 17 апреля 2020

Я пробовал разные методы, но, похоже, не смог получить эту работу. Я собирался создать дублирующую страницу для перенаправления после входа в систему, но это кажется немного любительским.

Вот мой раздел для входа :

 <?php
session_start();
include("../includes/config.php");
if (!isset($_SESSION['username'])) {
    header('location: memberlogin.php');
    exit();
}
?>

<a href="login/index.php">Login</a>

После входа я хочу, чтобы это отображалось вместо логина:

hello `<?php echo "  "  . $_SESSION['username']; ?> <a href="logout.php">logout</a>

Спасибо за помощь

Ответы [ 2 ]

1 голос
/ 17 апреля 2020

Используйте оператор if / else для $_SESSION['username']

Как:

if (!isset($_SESSION['username'])) {
  echo '<a href="/login">Login</a>';
} else {
  echo '<a href="/logout">Logout</a>';
}

Или короткий троичный , который делает то же самое

<?= !isset($_SESSION['username']) ? '<a href="/login">Login</a>' : '<a href="/logout">Logout</a>' ?>

Сообщество вики, так как оно слишком тривиально, чтобы зарабатывать очки.

1 голос
/ 17 апреля 2020

В файле .php, который содержит код, который отображает страницу html :

$username = $_SESSION['username'] ?? null;
if (true === empty($username)) {
    // show your link to login page
    echo '<a href="login/index.php">Login</a>';
} else {
    // show your link to logout page
    echo '<a href="logout/index.php">Logout</a>'; 
}

...