Error while validating login and redirecting to home

5

I'm using wamp 2.4 and trying to implement a login in AngularJS. However, when I click the submit button the refresh of the page occurs but it does not change to home . The session is always saved even though the user and password are incorrect.

Below the part of the code that is in error:

loginService/js:

'use strict';
app.factory('loginService',function($http, $location, sessionService){
    return{
        login:function(data,scope){
            //o erro ja comeca no retorno da session
            var $promise=$http.post('http://localhost/estudos/app/data/user.php',data); //send data to user.php
            $promise.then(function(msg){
                var uid=msg.data;
                if(uid){
                    //scope.msgtxt='Correct information';
                    sessionService.set('uid',uid);
                    $location.path('/home');
                }          
                else  {
                    scope.msgtxt='incorrect information';
                    $location.path('/login');
                }                  
            });
        },
        logout:function(){
            sessionService.destroy('uid');
            $location.path('/login');
        },
        islogged:function(){
            var $checkSessionServer=$http.post('http://localhost/estudos/app/data/check_session.php');
            return $checkSessionServer;
            /*
            if(sessionService.get('user')) return true;
            else return false;
            */
        }
    }

});

user.php:

<?php 
    header('Access-Control-Allow-Origin: *');
    header('Access-Control-Allow-Headers: DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Auth-Token,Authorization,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type');
    header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE');

    $user=json_decode(file_get_contents('php://input'));  //get user from 
    //nao esta respeitando a validacao
    if($user->mail=='[email protected]' && $user->pass=='1234') 
        session_start();
        $_SESSION['uid']=uniqid('ang_');
        print $_SESSION['uid'];
?>

app.js:

'use strict';
// Declare app level module which depends on filters, and services
var app= angular.module('myApp', ['ngRoute']);
app.config(['$routeProvider', function($routeProvider) {
  $routeProvider.when('/login', {templateUrl: 'partials/login.html', controller: 'loginCtrl'});
  $routeProvider.when('/home', {templateUrl: 'partials/home.html', controller: 'homeCtrl'});
  $routeProvider.otherwise({redirectTo: '/login'});
}]);


app.run(function($rootScope, $location, loginService){
    var routespermission=['/home'];  //route that require login
    $rootScope.$on('$routeChangeStart', function(){
        if( routespermission.indexOf($location.path()) !=-1)
        {
            var connected=loginService.islogged();
            connected.then(function(msg){
                if(!msg.data) $location.path('/login');
            });
        }
    });
});

I could not find where the error is.

    
asked by anonymous 11.04.2015 / 03:43

1 answer

1

I discovered the error.

I was using the localhost generator by grunt localhost: 9000 when I should use the localhost localhost.

Using the localhost of wamp the session was returned correctly. I hope this question helps those who use Almine Elgali's video as a basis.

    
12.04.2015 / 03:59