如果用户输入错误数据,如何重定向错误消息

时间:2014-09-03 15:42:34

标签: php session

我想在用户输入错误的用户名或错误的密码时重定向消息我已经尝试了这个但是我没有得到任何这是我的login.php

    <?php
$uname= mysql_real_escape_string($_POST['uname']);
$pass= mysql_real_escape_string($_POST['pass']);
$hashed_pass=md5("$pass");
    function redirect_to($location){
        header('Location:'.$location);}

$query="select id,uname from student where uname='{$uname}' and hashed_pass='{$hashed_pass}'";
$result=mysqli_query($cnn,$query);
//if query returns a thing 
if($result){
        $num_rows = mysqli_num_rows($result);
        //agar user peida shod
        if($num_rows == 1){

        $found_user=mysqli_fetch_array($result);
        redirect_to("main.php");
        }
        //useri peida nashod
        else{
         $_SESSION['error_message']="Wrong Username or Password";
        redirect_to("index.php");

        }
}

else{
echo "can not perform" . mysqli_error();
}?>

这是我的index.php代码的一部分

    <?php 
            if(isset($_SESSION['error_message'])){
   echo $_SESSION['error_message'];
   unset($_SESSION['error_message']);
}
        ?>  

我想知道我在这里失踪了什么

1 个答案:

答案 0 :(得分:1)

session_start();

您应该将它放在文件的最顶层。否则,可能不会在第二个请求上加载会话。

有关详细信息,请参阅http://php.net/manual/en/function.session-start.php