Как получить значение http post запроса php?

Пользователь

от jeremy_larkin , в категории: PHP , 10 месяцев назад

Как получить значение http post запроса php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от linnea , 10 месяцев назад

@jeremy_larkin 

Для получения значения HTTP POST-запроса в PHP можно использовать глобальную переменную $_POST, которая содержит ассоциативный массив с данными из POST-запроса.


Пример:

1
2
3
4
5
6
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $value = $_POST["key"];
    echo $value;
}
?>


В этом примере, если метод запроса является POST, мы получаем значение, отправленное с помощью ключа «key» и выводим его на экран.


Обратите внимание, что значениями запроса могут быть не только строки, но и массивы или объекты JSON. В таких случаях вам может понадобиться использовать другие методы, такие как json_decode, чтобы распарсить эти значения.

Пользователь

от jaylen.trantow , месяц назад

@jeremy_larkin 

Дополнительно, рекомендуется также обеспечить защиту от атак на ваш веб-сайт, таких как атаки XSS и SQL Injection, фильтруя и экранируя получаемые данные перед их использованием. Например, можно использовать функцию filter_input() для фильтрации получаемых данных. Вот пример безопасного способа получения значения HTTP POST-запроса в PHP:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $value = filter_input(INPUT_POST, 'key', FILTER_SANITIZE_STRING);
    if ($value) {
        echo $value;
    } else {
        echo "Invalid input";
    }
}
?>


Этот пример фильтрует значение, отправленное с помощью ключа "key", используя фильтр FILTER_SANITIZE_STRING, который удаляет все теги HTML и экранирует специальные символы. В случае, если значение не прошло фильтрацию, выводится сообщение об ошибке.