@Afafks123132132165

Почему не работает код?

По уроку на ютуб написал код ajax.
Но во время работы выдает ошибку: Undefined index: ourForm_inp in form.php.
Код html:
<!DOCTYPE html>
<html>
<head>
<meta charset = 'UTF-8'>
<meta name = 'viewport' content = 'width=device-width,initial-scale=1.0'>
<meta http-equiv = 'X-UA-Compatible' content = 'ie=edge'>
<title>Test</title>
</head>
<body>
<div id = 'response'></div>
<form name = 'ourForm'>
<input type = 'text' name = 'ourForm_inp'>
<button type = 'submit' name = 'ourForm_btn'>Отправить</button>
</form>
<script src = 'main.js'></script>
</body>
</html>

Код js:
var servResponse = document.querySelector('#response');

document.forms.ourForm.onsubmit = function(e){
  e.preventDefault();

  var userInput = document.forms.ourForm.ourForm_inp.value;
  userInput = encodeURIComponent(userInput);

  var xhr = new XMLHttpRequest();

  xhr.open('POST','form.php');

  xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
 
  xhr.onreadystatechange = function(){
  	if(xhr.readyState === 4 && xhr.status === 200){
  		servResponse.textContent = xhr.responseText;
  	}
  };

  xhr.send('ourForm_inp = ' + userInput);
};

Код php:
<?php

$inp = $_POST['ourForm_inp'];

echo 'LOL';

Ссылка на сайт если нужно: https://gameeeeeee.000webhostapp.com/
  • Вопрос задан
  • 128 просмотров
Решения вопроса 1
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
xhr.send('ourForm_inp=' + userInput);
Вот так попробуйте. Убрать лишние пробелы где =
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@NeoLab
Код правильный, должен работать.

В php забей var_dump($_POST); и посмотри, что вообще туда попадает.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы