问题描述
|
如果用户登录尝试失败,我想在登录表单下写一些内容,就像我在Asp.NET“ 0”中所做的一样
这是登录示例:
<body>
<form method=\"post\">
Username: <input type=\"text\" name=\"username\"/><br />
Password: <input type=\"password\" name=\"password\"/><br/>
<input type=\"submit\" id=\"Submit\" value=\"Submit\"/>
</form>
</body>
如果登录失败,则在表单下方应显示“登录失败”消息,但除了用echo或其他内容添加整个表单代码外,我不知道其他任何方法。
谢谢。
解决方法
在需要消息的地方添加以下内容:
<?php if ($loginFailed): ?>
<div class=\"errorMessage\">Login Failed</div>
<?php endif; ?>
请注意,我使用的是备用控件结构语法,该语法比编写意大利面条时的花括号要好一些。
, 您是否将其发布到另一个文件?您可以简单地分配一个响应并在表单后回显它:
//do logic php logic here,if correct redirect if not assign $response here
<body>
<form method=\"post\">
Username: <input type=\"text\" name=\"username\"/><br />
Password: <input type=\"password\" name=\"password\"/><br/>
<input type=\"submit\" id=\"Submit\" value=\"Submit\"/>
</form>
<?php echo $response; ?>
</body>
, 如果您不使用ajax并只是发布到同一页面,则可以执行以下操作:
<form>...</form>
<?php
if (isset($_POST[\'username\']) && !isset($_SESSION[\'username\'])
{
// non-successful login
}
?>
我假设您正在会话变量中设置成功登录。
, 当表单提交失败时,您是否只能将“登录失败”放在变量中,然后在代码中执行以下操作?
<body>
<form method=\"post\">
Username: <input type=\"text\" name=\"username\"/><br />
Password: <input type=\"password\" name=\"password\"/><br/>
<input type=\"submit\" id=\"Submit\" value=\"Submit\"/>
</form>
<? if(isset($failed) { echo \"<div>\" . $failed . \"</div>\"; } ?>
</body>