Ajax не может перехватить ответ PHP в журнале консоли - PullRequest
0 голосов
/ 13 июня 2019

Я пытаюсь отправить данные json с помощью ajax в php файл.Запрос выполняется нормально, но, когда я пытаюсь поймать ответ на консоли, это показывает мне тот же HTML-код, где работает javascript, а не ответ сервера.

До двух дней я работал с PHP 5.4,а затем обновить до PHP 7, но проблема остается.

Apache => 2.4.39
PHP => 7.1.30
MySQL => 5.7.26
Architecture => x86_64

Это мой код JavaScript

$('#check_usuario').submit(function() {
    var formData = { 'user': $('#user').val(), 'pass': $('#pass').val() }
    $.post('admin/validate.php', formData, response);           
    return false;
    function response(data){ // Recibimos la respuesta 'r' del servidor     
        $('#response').html('<p>User is ' + data);
        console.log(data);
                }
});

А это код PHP

<?php
if(!isset($_POST['submit'])) {
    header('Location: ../login.html');
}
else {
include('conection.php');
$user = $_POST['user'];
$pass = $_POST['pass'];

$resp = array( "user" => $user, "pass" => $pass );
echo json_encode($resp);
die($conexion);
}

Я ожидаю получить значение пользователя и пароль, но консоль печатает html-документ, где находится ajaxвыполнение

1 Ответ

0 голосов
/ 13 июня 2019

Вы проверяете значение POST:

if(!isset($_POST['submit'])) {

Но вы не отправляете это значение POST:

var formData = { 'user': $('#user').val(), 'pass': $('#pass').val() }

Таким образом, результатом является заголовок перенаправления:

header('Location: ../login.html');

Либо удалите условие if, либо отправьте значение:

var formData = { 'user': $('#user').val(), 'pass': $('#pass').val(), 'submit': true }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...