php成功登录后,在页面顶部显示username


php after log in successfully, display username at the top of the page?

我能够使用php进行用户注册并登录。我现在想做的是,如果我登录,它会转到index.html,然后在顶部菜单栏添加"欢迎"+用户名,下面的列表是:

<ul class="nav navbar-nav navbar-right">
    <li><a href="mypage.html">My Page</a></li>
    <li><a href="register.php">Sign up</a></li>
    <li><a href="login.php">Sign in</a></li>
</ul>

只有当用户登录时,我才想在"我的页面"之前加上"欢迎"+用户名。请帮忙!

有没有什么方法可以在同一个index.html中将"登录"改为"注销"?我是否必须创建另一个html文件,将"登录"替换为"注销"?

谢谢!

在用户登录的脚本中,存储用户的用户名和一个值,该值指示用户登录到$_SESSION,如下所示:

(将其放在文件的顶部,以便会话管理可以工作):

session_start();

然后在赋值之后,用户将他们的用户名和布尔值添加到会话超全局数组:

$_SESSION['username'] = <USERNAME>;
$_SESSION['loggedIn'] = true;

要使其正常工作,您需要将index.html文件重命名为index.php,以便在其中包含php标记。

完成后,您可以有条件地呈现问候消息和适当的按钮(登录/注销),如下所示:

从文件开头调用session_start开始:

<?php session_start(); ?>

然后,仅当用户登录时,执行此操作以呈现问候消息:

<?php if($_SESSION['loggedIn']): ?>
<span>Welcome <?php echo $_SESSION['username']; ?></span>
<?php endif; ?>

这是为了呈现登录或注销按钮:

<?php if($_SESSION['loggedIn']): ?>
<button>Log Out</button>
<?php else: ?>
<button>Log In</button>
<?php endif; ?>