【问题标题】:issue with echo div in PHPPHP中的echo div问题
【发布时间】: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> &nbsp
<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,错误信息将在密码框下方,我不想要

标签: php html css


【解决方案1】:

如果您不使用 AJAX,并且您不熟悉它。 试试这个!

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<label>Username:</label>
<input type="text" name="name" size="10"> </br>
<?php 
    if ($_SERVER['REQUEST_METHOD'] == 'POST') {
        if(!empty($_POST['name']) && !empty($_POST['pwd'])){
            $name = trim($_POST['name']);
            $password = trim($_POST['pwd']); # Normally this password is encrypted

            # Database Connection Here 

            if // if they've tried and failed to log in
            {
              echo '<div style="position:absolute; left:650px; top:25px;float:right">Your password is not right<div/>';
            }
        }
    }
?>
<label>Password:</label>
<input type="text" name="pwd"  size="10"> </br>

<a href="index.html">Register</a> &nbsp
<input type="submit" name="login" value="Login">

更好的解决方案或做法是使用 AJAX。使用 AJAX,您可以在任何您想要的地方显示错误消息。如果你想练习去下面的网站链接:-

http://www.developphp.com/view.php?tid=1296

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-09
    • 1970-01-01
    • 2011-02-21
    相关资源
    最近更新 更多