0

我在 index.php 上有一个登录表单。

我想要的是在这个页面上,如果您已经登录,则不应出现 html 表单。如果您已登录,您应该在 index.php 上可以看到您的用户名并带有注销按钮。

如果你没有登录,这个表格应该会出现:

<form action="<?php $PHP_SELF; ?>" method="post" >
            <h1>Login Form</h1>
            <div>
                <input type="text" placeholder="Username)" required="" id="username" />
            </div>
            <div>
                <input type="password" placeholder="Password" required="" id="password" />
            </div>
            <div>
                <input type="submit" value="Log in" />
                <a href="#">Lost your password?</a>
                <a href="#">Register</a>
            </div>
        </form>

有人可以帮助我吗?

4

4 回答 4

0

用于Session此并存储Username在会话中

<?php
    session_start();
    if(!isset($_SESSION['username']))
    {
?>

<form action="<?php $PHP_SELF; ?>" method="post" >
    <h1>Login Form</h1>
    <div>
        <input type="text" placeholder="Username" required="" id="username" />
    </div>
    <div>
        <input type="password" placeholder="Password" required="" id="password" />
    </div>
    <div>
        <input type="submit" value="Log in" />
        <a href="#">Lost your password?</a>
        <a href="#">Register</a>
    </div>
</form>

<?php 
    }
    else
    {
        Welcome, echo $_SESSION['username'];
    }
?>
于 2013-03-16T08:20:45.147 回答
0

简单的解决方案。将用户名保留在会话中,并在页面顶部检查会话是否已设置。如果是,那么他们已登录,您可以执行任何操作。如果没有,请显示您的登录表单...

于 2013-03-16T08:20:58.427 回答
0

在登录页面中使用会话并在每个页面的开头检查登录页面中的会话,在顶部执行此操作

session_start();

并从数据库中选择字段后将它们存储在会话中

$_SESSION['username'];

然后,在每个页面检查会话上,例如

if(!array_key_exists('username',$_SESSION)){
header("location:index.php");
}
于 2013-03-16T08:21:24.377 回答
0

您可以在登录时将一些值存储在会话变量中。

然后在页面上方您可以检查它。

如果可用,则表示用户已经登录,您无需显示登录表单。

如果没有,则显示登录表单。

于 2013-03-16T08:18:02.233 回答