用户名/密码错误消息和重定向错误

时间:2013-09-15 16:07:47

标签: php html login passwords username

创建客户端登录区域。我在clientLogin.html中登录表单:

       <form name="ClientLogin" method="post" action="login.php"> <br>
            <p>
             <label for='Username'>Username</label> <br>
            <input type="text" name="username" />
            </p>
            <p>

            <label for='Password'>Password</label> <br>
            <input type="password" name="password" />
            </p>
            <br>
            <input type="submit" value="Submit" />

        </form>

如果用户名&amp;密码组合不正确我想重定向到此页面添加一条消息“不正确的用户名/密码,请再试一次”。这是login.php的代码:

<?php


//Connect to the database
    require('db.php');

    $user = mysql_real_escape_string($_POST["username"]);
    $pass = mysql_real_escape_string($_POST["password"]);

    $clientdata = mysql_query("SELECT * FROM Users WHERE username='$user' and            password='$pass'")
    or die (mysql_error());

    $data = mysql_fetch_array($clientdata, MYSQL_ASSOC);

    if(mysql_num_rows($clientdata) == 1){

session_start();


$_SESSION['username'] = $user;


header('Location: profile.php');

    }else{
header('Location: clientLogin.html');
    }

我希望clientLogin.html文件需要更改为.php文件。除此之外,我很难过。任何指导将不胜感激。

3 个答案:

答案 0 :(得分:2)

您可以在调用ClientLogin时设置SESSION标志。

    $_SESSION['loginerror'] = 1;
ClientLogin.php中的

    if ($_SESSION['loginerror'] > 0) {
      /* Display Appropriate Error message */
    }

答案 1 :(得分:1)

您需要将clientLogin.html的扩展名从.html更改为.php

header('Location: clientLogin.html');更改为header('Location: clientLogin.php');

将此部分代码添加到clientLogin.php页面的顶部:

<?php 
session_start();
if(empty($_SESSION['username'])) {
 echo 'incorrect username/ password please try again.' ;
}
?> 

答案 2 :(得分:0)

你应该使用exit();重定向到其他文件后...

header('Location: profile.php');
exit();

请使用mysqli代替mysql。不会受到支持 新版本的PHP。