Вот мой JavaScript:(AJAX/PHP) Почему мой запрос POST не работает в этом кратком примере?
var xhr = new XMLHttpRequest();
xhr.open("POST", "pants.php", true);
xhr.onreadystatechange = function() {
if (xhr.readyState === 4) {
var slot = document.getElementsByTagName("section")[0].innerHTML = xhr.responseText;
}
}
xhr.send("name=Sarah");
Я посылаю «имя = Сару», чтобы testpage.php через POST, и когда я получаю ответ, что я делаю, чтобы отобразить его на моей странице.
И вот pants.php:
echo $_POST['name'];
Так что я просто должен отображать "Сара" на этой странице. Но вместо этого я получаю сообщение об ошибке «: Undefined index: name». Я не могу понять, почему это ...
Не удается воспроизвести: HTTP: // jsfiddle .net/5HHSv /. Но PHP действительно может потребовать заголовки типа контента, я не знаю. –
Я также предлагаю начать использовать панель инструментов разработчика (https://developers.google.com/chrome-developer-tools/) или [Firebug] (http://getfirebug.com/), чтобы помочь отладить AJAX Запросы. Если вы посмотрите на вкладках Сеть/Сеть, он скажет вам, были ли вы успешны POSTED-значения, и если да, какая конечная точка, полезная нагрузка, сколько времени потребовалось и т.д. – Newbi3
@FelixKling - Когда я запускаю этот тест, я получаю «Контент» -Type: text/plain', который PHP (правильно) не будет анализировать как данные формы. – Quentin