Php 如何在身份验证后重定向到另一个视图

Php 如何在身份验证后重定向到另一个视图,php,angularjs,mysqli,ionic-framework,Php,Angularjs,Mysqli,Ionic Framework,我正在使用angularJS和php后端,并尝试进行身份验证。我通过console.log测试了它,当密码不正确时,我会收到错误消息,当密码正确时,我什么也看不到,在这种情况下,我想被安装到其他视图,我该怎么做,请: app.js app.controller('loginCtrl', function($scope, $location,$state,$http,$window){ $scope.submit = function() { data = {

我正在使用angularJS和php后端,并尝试进行身份验证。我通过console.log测试了它,当密码不正确时,我会收到错误消息,当密码正确时,我什么也看不到,在这种情况下,我想被安装到其他视图,我该怎么做,请:

app.js

app.controller('loginCtrl', function($scope, $location,$state,$http,$window){

    $scope.submit = function()
    {
        data = {
            'NomClient' : $scope.NomClient,
            'mdp' : $scope.mdp
        };

        $http.post('http://localhost/deb/login.php', data)
        .success(function(data, status, headers, config)
        {
          // $window.location.href = '#/admin';
            console.log(data);
        })
        .error(function(data, status, headers, config)
        {
            console.log('error');
        });
    }

});
login.php

 <?php  

$data = json_decode(file_get_contents("php://input"));

 $connect = mysqli_connect("localhost", "root", "", "test");  


 if(count($data) > 0)  
 { 
$NomClient=mysqli_real_escape_string($connect, $data->NomClient);
$mdp=mysqli_real_escape_string($connect, $data->mdp);


$query = 'SELECT * FROM `client` WHERE NomClient = "'.$NomClient.'" AND   mdp= "'.$mdp.'"';

$q = mysqli_query($connect , $query);

if(mysqli_num_rows($q) > 0 )
        { 
            $_SESSION["logged_in"] = true; 
            $_SESSION["naam"] = $NomClient; 
        }
        else
        {
            echo 'The username or password are incorrect!';
        }

}
 ?>

如您所见,我在app.js中有一行注释://$window.location.href='#/admin';我把它作为评论,因为当我把它,它重定向到管理员视图我,但密码是不正确的

提前感谢

在php文件中
$data = json_decode(file_get_contents("php://input"));

 $connect = mysqli_connect("localhost", "root", "", "test");  
$response = array();

 if(count($data) > 0)  
 { 
$NomClient=mysqli_real_escape_string($connect, $data->NomClient);
$mdp=mysqli_real_escape_string($connect, $data->mdp);


$query = 'SELECT * FROM `client` WHERE NomClient = "'.$NomClient.'" AND   mdp= "'.$mdp.'"';

$q = mysqli_query($connect , $query);

if(mysqli_num_rows($q) > 0 )
        { 
            $response["error"] = false;
            $_SESSION["logged_in"] = true; 
            $_SESSION["naam"] = $NomClient; 
        }
        else
        {
            $response['error'] = true;
        }
  echoRespnse(200, $response);

}
function echoRespnse($status_code, $response)
{

    $app->contentType('application/json');
    echo json_encode($response);
}
 ?>
app.js

 app.controller('loginCtrl', function($scope, $location,$state,$http,$window){

    $scope.submit = function()
    {
        data = {
            'NomClient' : $scope.NomClient,
            'mdp' : $scope.mdp
        };

        $http.post('http://localhost/deb/login.php', data)       .success(function(data)
        {
          console.log(data.error);
          if(data.error=="true") { 
              //Show error
           }else {
              //else redirect
         }

        })
        .error(function(data)
        {
            console.log('error');
        });
    }

});
在php页面上

if(mysqli_num_rows($q) > 0 )
        { 
            echo 'success'; 
        }
        else
        {
            echo 'error';
        }

}
在你的app.js上

$http.post('http://localhost/deb/login.php', data)
        .success(function(response)
        {
            if(response.data =='success'){
                  $window.location.href = '#/admin';
                  }else{
                    console.log('Username or Password Error');
                     }

            console.log(data);
        })
        .error(function(data, status, headers, config)
        {
            console.log('error');
        });

只要试着使用window.location.hrefI使用它,正如您在代码中看到的,我把它作为注释,因为当我把它重定向到其他视图时,密码是错误的。您需要做的是从php发送回错误消息/布尔值,检查数据它来了什么,并放入if条件。您可以解释更多吗!我该怎么办!谢谢,但我仍然有同样的问题,总是重定向,但密码是错误的