Я не могу считать тело Запроса HTTP POST с PHP!

Я никогда не использовал PHP, но прямо сейчас, я должен записать файл PHP, который отображает в файле журнала содержимое тела Запроса HTTP POST.

Я считал, что можно получить доступ к переменным тела через массив _POST. К сожалению, это, кажется, пусто, хотя я вполне уверен в теле моего Запроса HTTP существует материал!

Что я должен использовать, чтобы быть на 100% уверенным в содержании моего Тела HTTP?

Спасибо.

18
задан Josh Darnell 3 January 2012 в 20:48
поделиться

4 ответа

$post_body = file_get_contents('php://input');

php: // input позволяет читать необработанные данные POST. Это менее требовательная к памяти альтернатива $ HTTP_RAW_POST_DATA и не требует каких-либо специальных директив php.ini. php: // input недоступен с enctype = "multipart / form-data".

(Источник: http://php.net/wrappers.php )

59
ответ дан 30 November 2019 в 05:57
поделиться
2
ответ дан 30 November 2019 в 05:57
поделиться

Глобальной переменной является $_POST, а не _POST. Также может оказаться, что вы отправляете данные через метод GET, в этом случае вам нужно использовать глобальную переменную $_GET.

Если вы хотите проверить метод POST или GET, вы можете использовать глобальную переменную $_REQUEST. Пример кода ниже:

<html>
<body>
<form method="POST" action="postdata.php">
<input type="text" name="mydata" />
<input type="submit">
</form>
</body>
</html>

файл postdata.php:

<?php

$result = $_POST['mydata'];
echo $result;
2
ответ дан 30 November 2019 в 05:57
поделиться

Возможно, вы неправильно написали. Правильное название массива $_POST

Попробуйте это

<?php
var_dump($_POST);

и посмотрите, что получится.

0
ответ дан 30 November 2019 в 05:57
поделиться
Другие вопросы по тегам:

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