Я пытаюсь отправить данные формы в мой php-файл, используя API выборки, но ничего не получается.
Вот мой файл .js
form.addEventListener("submit", e => {
e.preventDefault();
let message = document.getElementById("message").value,
name = document.getElementById("name").value;
let object = {
name,
message
}
//Apply encodeURIComponent to element
function formEncode(obj) {
var str = [];
for (var p in obj)
str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
return str.join("&");
}
fetch("http://localhost/essai/script.php", {
method: "POST",
mode: "same-origin",
credentials: "same-origin", // For COOKIES
headers : {
'Content-type': ''
},
body: formEncode(object)
})
.then(response => response.text)
.catch(err => console.log(`Une erreur s'est produite : ${err}`))
});
Вот мой .php файл
<?php
$contentType = isset($_SERVER["CONTENT_TYPE"]) ? trim($_SERVER["CONTENT_TYPE"]) : '';
if ($contentType === "application/json") {
//Receive the RAW post data.
$content = trim(file_get_contents("php://input"));
$decoded = json_decode($content, true);
//If json_decode failed, the JSON is invalid.
if(! is_array($decoded)) {
echo $_GET['name'];
} else {
// Send error back to user.
echo "Une erreur s'est produite";
}
}
echo $ _POST ['name'] не отображает имя пользователя, добавленное во вход, Пожалуйста, помогите мне решить эту проблему. Спасибо!