$ _POST пуст в php - PullRequest
       3

$ _POST пуст в php

0 голосов
/ 30 октября 2010

Я просмотрел все ответы в этом сообщении
print_r ($ _ POST);===> возвращает пустой массив
print_r ($ _ SERVER);

Array ( [HTTP_HOST] => localhost 
        [HTTP_ACCEPT] => */* 
        **[HTTP__CONTENT_TYPE]** => application/json; charset=UTF-8" 
        [CONTENT_LENGTH] => 942
        **[CONTENT_TYPE]** => application/x-www-form-urlencoded 
        [PATH] => /usr/local/bin:/usr/bin:/bin 
        [SERVER_SIGNATURE] => Apache/2.2.14 (Ubuntu) Server at localhost Port 80
        [SERVER_SOFTWARE] => Apache/2.2.14 (Ubuntu) 
        [SERVER_NAME] => localhost 
        [SERVER_ADDR] => 127.0.0.1 
        [SERVER_PORT] => 80 
        [REMOTE_ADDR] => 127.0.0.1 
        [DOCUMENT_ROOT] => /var/www 
        [SERVER_ADMIN] => webmaster@localhost 
        [SCRIPT_FILENAME] => /var/www/slocation.php 
        [REMOTE_PORT] => 50657 
        [GATEWAY_INTERFACE] => CGI/1.1 
        [SERVER_PROTOCOL] => HTTP/1.1 
        [REQUEST_METHOD] => POST 
        [QUERY_STRING] => 
        [REQUEST_URI] => /slocation.php 
        [SCRIPT_NAME] => /slocation.php 
        [PHP_SELF] => /slocation.php 
        [REQUEST_TIME] => 1288466907 
    )

В чем разница между HTTP__CONTENT_TYPE и CONTENT_TYPE?

print_r ($ HTTP_RAW_POST_DATA);==> возвращает правильные отправленные данные
file_get_contents ('php: // input');======> возвращает правильные данные.

Сбой только $ _POST.

Это моя команда curl

$url = "http://localhost/slocation.php";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt ($ch, CURLOPT_HTTPHEADER, array('"Content-type: application/json; charset=UTF-8"'));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
$result = curl_exec($ch);

UPDATE ::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Я нашел мастера здесь

1 Ответ

1 голос
/ 31 октября 2010

Чтобы ответить на мой собственный вопрос «В чем разница между HTTP__CONTENT_TYPE и CONTENT_TYPE?»
Если вы видите «HTTP__CONTENT_TYPE», это, скорее всего, означает, что вы допустили ошибку при установке поля заголовка CONTENT-TYPE.Возможно, когда curl не распознает действительное значение CONTENT_TYPE, тогда неправильное значение установлено как HTTP__CONTENT_TYPE, а CONTENT_TYPE принимает значение по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...