当用户使用php登录时,如何使登录消失

时间:2015-04-21 15:08:47

标签: php

我在我网站的每个页面顶部都有一个登录信息,当用户登录时我希望登录表单消失,我该如何在php中执行此操作?我不太确定并且已经在网上看了很多但却找不到怎么做。

这是我的代码

<?php
include "connect.php";
if (isset($_POST['username']) and isset($_POST['password'])){
    $username = $_POST['username'];
    $password = $_POST['password'];
    $query = "SELECT * FROM users WHERE username='$username' and password='$password'";
    $result = mysqli_query($con, $query) or die(mysqli_error());
    $count = mysqli_num_rows($result);
    if ($count == 1){
        $_SESSION['username'] = $username;
    }else {
        echo "Invalid Login Credentials.";
    }
}
?>
<div id = "login_details">
<?php      
if (isset($_SESSION['username'])){
    $username = $_SESSION['username'];
    echo "Hello " . $username . " ". "<a href='logout.php'>Logout</a>";
}
?>
<div id="login">
    <form action="index.php" method="post">
        <label for="username" class="uname" data-icon="u" >Username:</label>
        <input id="username" name="username" required="required" type="text" size="10" placeholder="Username"/>
        <label for="password" class="youpasswd" data-icon="p">Password:</label>
        <input id="password" name="password" required="required" type="password" size="10" placeholder="Password" /> 
        <input type="submit" value="Login" /> 
    </form>
    <p>Not a member? <a href ="register.php">Register</a></p>
</div>

2 个答案:

答案 0 :(得分:0)

<div class="login <?if($_SESSION['username'] != ''){echo "hidden";}?>">
  /* <our login form here */ 
</div>

在显示登录字段的div中添加一个类,然后通过css将该类设置为隐藏:

.hidden{display:none;}

因此,当用户进入时,您可以使用登录表单隐藏div。

答案 1 :(得分:0)

将您的登录框的呈现移动到以下的其他内容中:

if (isset($_SESSION['username'])){

然后,如果用户未登录,它将呈现登录框,如果是,则呈现问候语。

所以以下没有成功:

if (isset($_SESSION['username'])){
  $username = $_SESSION['username'];
  echo "Hello " . $username . " ". "<a href='logout.php'>Logout</a>";
}
else{
//script to render login box e.g.
$login = <<<LOGIN
<form id="login" name="login" method="post" action="#">
<label for="uName">User Name:</label>
<input type="text" name="uName" id="uName" />
<label for="pwd">Password:</label>
<input type="password" name="pwd" id="pwd" />
</form>
LOGIN;

echo $login;

请更新您的问题,以包括您尝试过的内容以及结果。