Проблема при идентификации пользователей с данными из базы данных MySQL - PullRequest
1 голос
/ 29 марта 2019

Я получил проект с сервера, развернул его локально, экспортировал базу данных, изменил в файле "c: / windows / system32 / hosts" localhost на dev.project_name.

#
127.0.0.1 dev.project_name
::1 localhost

Я работаю с xampp, поэтому я изменил файл приложения "C: \ xampp \ apache \ conf \ extra / httpd-vhost", чтобы создать виртуальные хосты для порта 80 и порта 443,

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "C:/xampp/htdocs/project_name"
    ServerName dev.project_name
    ErrorLog "logs/dummy-host.example.com-error.log"
    CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>
<VirtualHost *:443>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "C:/xampp/htdocs/project_name"
    ServerName dev.project_name
    SSLEngine on
    SSLCertificateFile "conf/ssl.crt/server.crt"
    SSLCertificateKeyFile "conf/ssl.key/server.key"
    ErrorLog "logs/dummy-host.example.com-error.log"
    CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>

Я также изменилданные в файле «parameters.yml», куда я помещаю параметры своей базы данных локально.

parameters:
    database_driver: pdo_mysql
    database_host: 127.0.0.1
    database_port: 3306
    database_name: db_project
    database_user: root
    database_password: 
    mailer_transport: smtp
    mailer_host: 127.0.0.1
    mailer_user: null
    mailer_password: null
    mailer_encryption: 
    mailer_port: 

Я проверил с помощью команды "php app / console doctrine: database: create", чтобы проверить соединение сбаза данных и все работает хорошо, база данных хорошо создана, но когда я подключаюсь к веб-сайту локально, я не могу идентифицировать себя с логином и паролем, который обычно работает на веб-сайте онлайн, хотя я экспортирую все таблицы в локальной базе данных.

Это код loginController.js

angular
    .module('altairApp')
    .controller('loginCtrl', [
        '$scope',
        '$rootScope',
        'utils',
        '$location', 'toaster','AuthenticationService', 'UserService',
        function ($scope,$rootScope,utils, $location, toaster, AuthenticationService, UserService) {
            (function initController() {
                $scope.user = {};
                $scope.data = {};
                $scope.loading = false;
                // reset login status
                AuthenticationService.ClearCredentials();
            })();

            //Form Validation
            var $formValidate = $('#user_login_form');
            var $formValidateForgot = $('#forgot_password');
            //$formValidate.parsley().validate()

            $formValidate
                .parsley({
                    'excluded': 'input[type=button], input[type=submit], input[type=reset], input[type=hidden], .selectize-input > input'
                })
                .on('form:validated',function() {
                    $scope.$apply();
                })
                .on('field:validated',function(parsleyField) {
                    if($(parsleyField.$element).hasClass('md-input')) {
                        $scope.$apply();
                    }
                });

            $formValidateForgot
                .parsley({
                    'excluded': 'input[type=button], input[type=submit], input[type=reset], input[type=hidden], .selectize-input > input'
                })
                .on('form:validated',function() {
                    $scope.$apply();
                })
                .on('field:validated',function(parsleyField) {
                    if($(parsleyField.$element).hasClass('md-input')) {
                        $scope.$apply();
                    }
                });

            $scope.registerFormActive = false;

            var $login_card = $('#login_card'),
                $login_form = $('#login_form'),
                $login_help = $('#login_help'),
                $register_form = $('#register_form'),
                $login_password_reset = $('#login_password_reset');

            // show login form (hide other forms)
            var login_form_show = function() {
                $login_form
                    .show()
                    .siblings()
                    .hide();
            };

            // show register form (hide other forms)
            var register_form_show = function() {
                $register_form
                    .show()
                    .siblings()
                    .hide();
            };

            // show login help (hide other forms)
            var login_help_show = function() {
                $login_help
                    .show()
                    .siblings()
                    .hide();
            };

            // show password reset form (hide other forms)
            var password_reset_show = function() {
                $login_password_reset
                    .show()
                    .siblings()
                    .hide();
            };

            $scope.loginHelp = function($event) {
                $event.preventDefault();
                utils.card_show_hide($login_card,undefined,login_help_show,undefined);
            };

            $scope.backToLogin = function($event) {
                $event.preventDefault();
                $scope.registerFormActive = false;
                utils.card_show_hide($login_card,undefined,login_form_show,undefined);
            };

            $scope.registerForm = function($event) {
                $event.preventDefault();
                $scope.registerFormActive = true;
                utils.card_show_hide($login_card,undefined,register_form_show,undefined);
            };

            $scope.passwordForgot = function($event) {
                $event.preventDefault();
                utils.card_show_hide($login_card,undefined,password_reset_show,undefined);
            };

            $scope.login = function(user) {
                if($('#user_login_form').parsley().isValid()) {
                    $scope.login_loading = true;
                    AuthenticationService.Login(user, function (response) {
                        response.status=true;
                        console.log(response);
                        if (response.status) {
                            AuthenticationService.SetCredentials(JSON.parse(response.data), $scope.user.password);
                            $scope.login_loading = false;
                            toaster.pop('success', "Login", response.message);
                            $location.path('/dashboard');
                        } else {
                            $scope.login_loading = false;
                            toaster.pop('error', "Login", response.message);
                        }
                    });
                }
            }

            $scope.forgotPassword = function(email) {
                if($('#forgot_password').parsley().isValid()) {
                    $scope.loading = true;
                    UserService.ForgotPassword(email, function (response) {
                        $scope.loading = false;
                        if (response.status) {
                            $scope.data = {};
                            // send this token to change_password api
                            // $scope.getUserByToken(response.token);
                            toaster.pop('success', "Forgot Password", response.message);  
                        } else {
                            toaster.pop('error', "Forgot Password", response.message);                         
                        }
                    });
                }
            }

            $scope.getUserByToken = function(token) {
                var tokenObj = {};
                tokenObj.token = token;
                UserService.getUserByToken(tokenObj, function (response) {
                    $scope.loading = false;
                    if (response.status) {
                        var id = response.userId;
                        $rootScope.globals.reset_password_userId = id;
                        //$location.path('/reset_password');
                    } else {
                         toaster.pop('error', "Reset Password", response.message);                           
                    }
                });
            }

        }
    ]);

Я думаю, что проблема в том, что response.status и response.data не существуютт и я не знаю почему.

Большое спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...