php ajax автоматический вход без действия формы - PullRequest
0 голосов
/ 19 сентября 2018

php ajax auto login хорошо работает в действии формы, но возможно ли выполнить без действия формы?

$email = 'xxx@gmail.com';
$password = 'password';

<script>
    var user = <?php $email; ?>;
    var pass = <?php $password; ?>;
    console.log(email=' + user + ', password=' + pass);
    $.ajax({
        url: 'http://www.example.com/login',
        type: 'POST',
        data: JSON.stringify({ email: user, password: pass }),
        success: function(data, status) {
            // do something after login
            console.log('success');
        },
        error: function() {
            console.log('error');
        }
    });

    return false;

    </script>

Ответы [ 2 ]

0 голосов
/ 19 сентября 2018

Следующий код может работать при загрузке страницы, если имя пользователя и пароль заполнены автоматически.

Надеюсь, это может вам помочь.

<script>

 $(document).ready(function(){

    var user = $('[name="username"]').val();
    var pass = $('[name="password"]').val();

    if(user !== '' && pass!== ''){

        $.ajax({
            url: 'http://www.YourUrl.com/login',
            type: 'POST',
            data: { 
                email: user, 
                password: pass
            },
            success: function(response) {
                   //When successfully logged in
            },
            error: function() {
                  //If error on server side script
            }
        });

      }

   });

Так как здесь мы создали запрос POST,вам нужно обработать серверную часть $ _POST.

0 голосов
/ 19 сентября 2018

Вместо этого следует использовать метод GET.

$email = 'xxx@gmail.com';
$password = 'password';
<script>
var user = <?php $email; ?>;
var pass = <?php $password; ?>;
$.ajax({
    url: 'http://www.example.com/login',
    type: 'GET', //send it through get method
    data: { 
    email: user, 
    password: pass
    },
    success: function(response) {
    //Do Something
    },
    error: function(xhr) {
    //Do Something to handle error
    }
});
</script>

Затем проверьте на странице входа в систему параметры электронной почты и пароля, заданные методами GET или POST.

<?php 

if (isset($_GET['email']) && isset($_GET['password']) || isset($_POST['email']) && isset($_POST['password'])){
// check your database and take actions.
}else{
// do nothing and show the post from again.
}

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