Задать вопрос
@usbfan_official

Fetch как передать строку в php?

Вопрос очень просто ну я не догоняю
Код на php
$test= $_POST['Что сюда писать??'];
echo "$test"

Код реакт
const photo = "https://blablabla.ru/sss.jpg?us=22&qq=11"
fetch(`https://example.site/example/example.php`, {
        method: 'post',
        headers: {
          "Content-Type": "application/x-www-form-urlencoded",
        },
        body: photo
    })


Как мне в $test получить эту ссылку "https://blablabla.ru/sss.jpg?us=22&qq=11" я не могу понять
  • Вопрос задан
  • 231 просмотр
Подписаться 2 Простой 14 комментариев
Пригласить эксперта
Ответы на вопрос 2
IvanU7n
@IvanU7n
nothing interesting here
1) убрать неверный заголовок в fetch()
2) использовать file_get_contents('php://input') вместо $_POST

альтернативно можно использовать FormData для тела, при добавлении данных в который нужно указать ключ — вот этот ключ и спрашивать у $_POST

ещё более альтернативно можно прогнать через json
на клиенте делаем:
const photo = "https://blablabla.ru/sss.jpg?us=22&qq=11";
fetch(`https://example.site/example/example.php`, {
  method: 'POST',
  headers: {
    "Content-Type": "application/json",
  },
  body: JSON.stringify(photo),
});

а на сервере делаем:
$test = json_decode(file_get_contents('php://input'), true);
var_dump($test);
Ответ написан
cyber-jet
@cyber-jet
Если нужно получить только строку:
const photo = "https://blablabla.ru/sss.jpg?us=22&qq=11";
fetch("https://example.site/example/example.php", {
  method: "POST",
  body: photo,
});

$string = file_get_contents("php://input");
echo $string;
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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