登录尝试失败后保留字段中的文本

时间:2013-02-28 04:26:49

标签: php html forms

我有一个登录表单,当我尝试登录并失败时,我会被发送回登录表单并且它是空白的。我想在失败的尝试中保留用户名/电子邮件地址字段,这样我只需要再次输入密码。关于我需要做什么的任何建议?

HTML:

            <?php if ($_GET['msg'] == 'failed') : ?>
        <p style="color:red; font-weight: bold">Incorrect email or password. Try again!</p>
        <?php endif; ?>
        <form action="index.php?cmd=login" method="post" id="form">
            <div class="signup-form">
                <p>
                    <label>Email</label>
                     <input type="text" name="email" value="" class="textbox required email" />
                </p>
                <p>
                    <label>Password</label>
                    <input type="password" name="password" value="" class="textbox required"/>
                </p>
                <p>
                    <label></label>
                    <input type="checkbox" name="rememberme" value="1" class="" checked="checked" /> Remember Me?
                </p>
                <p>
                    <a style="margin: 10px 0 0 0; color:#000;" class="button" href="javascript://" onclick="$('#form').submit()">Continue</a> <img src="images/ajax-loader.gif" class="loading" style="display: none;" />

 if ($_POST) {
$login = $_USER->do_log_in(input($_POST['email']), md5($_POST['password']), $_POST['rememberme']);
if ($login == true) {
    $_SESSION['userid'] = $_USER->get_user_id();
    header('location: index.php');
}else
    header('location: index.php?cmd=login&msg=failed');
}

1 个答案:

答案 0 :(得分:3)

使用此代码

<input type="text" name="email" value="<?php if(isset($_POST['email'])) { echo $_POST['email']; } ?>" class="textbox required email" />

您只需使用isset方法并检查天气是否已设定。如果是,则在value中显示其文字。