2016-04-28 117 views
0

我能够使用php进行用户注册并登录。我试图现在要做的是,如果我登录,它进入的index.html然后在顶部菜单栏添加“欢迎” +用户名,其中下面的列表是:php登录成功后,在页面顶部显示用户名?

<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文件来替换“登录”到“注销”?

谢谢!

+1

使用会话将用户名存储在会话变量中将其显示在您的页面 –

+2

一切皆有可能.. where is .php?和你的HTML代码无法从PHP获得价值,所以它应该是'index.php'以便于工作.. – Thamilan

回答

2

在在登录的用户,存储用户的用户名和指示用户登录到$_SESSION这样的值的脚本:

(请将这个在文件的顶部,这样会话管理可以工作):

session_start(); 

然后valdiating用户他们的用户名和布尔值添加到会话超全局数组后:

$_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; ?> 

这呈现一个登录名或标志ut键:

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

在此先感谢! – Eric

+0

错字在这里:'$ _SESSON'。 –

+1

@ A.L修复它,感谢您的注意! – dimlucas

相关问题