【发布时间】:2014-10-12 11:32:06
【问题描述】:
我正在做登录页面如果用户没有成功登录我会使用下面的处理它,这意味着消息将显示在文本框pwd的左侧。但是登录失败时该消息从未显示。你能告诉我为什么吗
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<label>Username:</label>
<input type="text" name="name" size="10"> </br>
<label>Password:</label>
<input type="text" name="pwd" size="10"> </br>
<?php
echo '<div style="position:absolute; left:650px; top:25px;float:left">';
if (isset($username))
{
// if they've tried and failed to log in
echo 'Your password is not right<br />';
}
echo '</div>';
?>
<a href="index.html">Register</a>  
<input type=submit name=login value=Login>
</form>
如果我不输入 PHP 代码,消息将显示在 pwd 文本框上。但我想要的是文本框的左侧。我确定问题是CSS样式,因为当我刚刚定义DIV时只有一个属性,即float left,错误将显示在pwd文本框中,登录和注册将在此错误消息的右侧,非常奇怪
【问题讨论】:
-
$username来自哪里? -
if (isset($_POST['name']) && isset($_POST['pwd'])) { // 如果用户刚刚尝试登录 $username = $_POST[ '姓名']; $password = $_POST['pwd'];
-
好吧@Shomz 的回答是正确的。但是你为什么要
$username = $_POST['name']; $password = $_POST['pwd'];? -
样式是拼写错误。我改回来还是不行
-
我将用它来检查这两个值是否设置。如果没有设置,则加载整个页面,然后在加载整个页面后进行检查,看看用户是否有效或不。整个代码很有趣,只有一部分是,我想把错误信息放在密码框旁边,所以我添加了 DIV 尝试处理它。问题是,如果我只是删除,div 不能正常工作DIV,错误信息将在密码框下方,我不想要