Отправляю пост-запрос ajax, но $ _POST в PHP всегда пуст - PullRequest
0 голосов
/ 29 сентября 2019

У меня проблема с отправкой данных с помощью AJAX-запроса в php-файл, в основном я использую post-запрос для отправки некоторых данных только для тестирования, запрос успешен, когда я проверил с помощью инструментов разработчика в Chrome, как я вижуданные, которые были отправлены, но переменная $_POST[] в php всегда равна нулю, и я не понимаю почему, потому что мои данные были отправлены в файл php.

Опробовал все виды возможностей, найденных здесь,Ни один из них не позволит мне идти дальше, все они оставят мой $_POST[] пустым. Я изменил значения внутри атрибута данных. Я добавил или удалил тип содержимого, но ничего не помогло.

Здесь у вас есть мой код jQuery.

$.ajax({
  method: "POST",
  url: "2.php",
  data: { name: 'JohnDoe', age: '19' }
}).done(function( msg ) {
  alert(msg);
});

Это мой код PHP.

<?php

$user=$_POST['name'];
 var_dump($user); 
?>

Ошибки

$user=$_POST['name'];

//ERROR - Notice: Undefined index: name in G:\xampp\htdocs\weather\2.php on line 6
//Expected result is 'JohnDoe'.
 var_dump($user); 

//this is Null 
//Expected result is to contain some data

Это два моих результата, которые я получаю в php.

Файлы html и php находятся в одном файлепапка.

1 Ответ

1 голос
/ 29 сентября 2019

Вы делаете два HTTP-запроса.

Первый с использованием JavaScript, когда вы делаете POST-запрос и оповещаете ответ.

Вы можете увидеть данные из ответа там. screenshot

Вы делаете второй запрос, вводя адрес в адресную строку, где вы делаете запрос GET и ответ отображается как веб-страница.


$_POST содержит данные POSTed из текущего запроса , а не данные из любого предыдущего запроса.

Данные, которые вы отправили POST при первом запросе, недоступны, когдаПрограмма PHP запускается снова, используя второй запрос в качестве входных данных.

Если вы хотите получить доступ к этим данным, вам нужно явно сделать что-то, чтобы они сохранялись. Это может быть связано с браузером (чтобы разные пользователи не видели данные друг друга) - например, в сеансе или файле cookie - или оно могло быть независимым от браузера - например, в базе данных - так, чтобы каждый посетитель сайта могсм. данные.

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