登录时显示自定义错误消息


Display custom error message in login

我想用PHP实现一个简单的登录。但是,我还想自定义登录不正确时的错误消息,例如以红色显示错误消息。

登录.php

<form id="frmlogin" name="frmlogin"  method="POST" action="validarUsuario.php">
    <p><input type="text" name="usuario" id="usuario" class="required" maxlength="50" placeholder="Nombre Usuario"></p>
    <p><input type="password" name="password" id="password" class="required"  maxlength="50" placeholder="Password"></p>
    <p id=error> </p>
    <p class="submit"><input type="submit" name="commit" value="Login"></p>
</form>

validarUsuario.php

<?php
    include("connection.php");
    conectar_bd();
    $usr = $_POST['usuario'];
    $pw = md5($_POST['password']);
    $sql = "SELECT usr FROM Client WHERE usr = '$usr'AND password ='$pw'";
    $result = mysql_query($sql, $con);
    if ($fila = mysql_fetch_array($result)) {
        header('Location: menuclient.php');
    } else {
        /* How customize my message error */
    }
?>

Login.php文件中,当用户名或密码不正确时,我想显示,例如,在id=error中:"登录不正确"为红色。我不知道我是否可以用 php 做到这一点。感谢您的帮助。

您可以使用session .尝试遵循方式。

登录.php

  <?php
    session_start();
    if($_SESSON['error']): ?>
    <span>Error : <?php echo $_SESSION['errorMsg']; ?></span>
  <?php endif; ?>
  <form id="frmlogin" name="frmlogin"  method="POST" action="validarUsuario.php">
            <p><input type="text" name="usuario" id="usuario" class="required" maxlength="50" placeholder="Nombre Usuario"></p>
            <p><input type="password" name="password" id="password" class="required"  maxlength="50" placeholder="Password"></p>
             <p id=error> </p>
            <p class="submit"><input type="submit" name="commit" value="Login"></p>
        </form>

validarUsuario.php

<?php
session_start();
include("connection.php");
conectar_bd();
$usr = $_POST['usuario'];
$pw = md5($_POST['password']);
$sql = "SELECT usr FROM Client WHERE usr = '$usr'AND password ='$pw'";
$result=mysql_query($sql,$con);
if( $fila=mysql_fetch_array($result) )
{
  header('Location: menuclient.php');
}
else {
  $_SESSION['errorMsg'] = "Wrong username or Password";
  $_SESSION['error'] = true;
  header('Location: Login.php');
}
?>