开发者

PHP Settings? PHP not receiving POST data

开发者 https://www.devze.com 2023-03-25 02:20 出处:网络
I’m sending a .php file POST data from a java application. The .php file is not accepting the POST data. file_get_contents(‘php://input’) is empty and $_PO开发者_运维技巧ST is empty. I know the pro

I’m sending a .php file POST data from a java application. The .php file is not accepting the POST data. file_get_contents(‘php://input’) is empty and $_PO开发者_运维技巧ST is empty. I know the problem isn’t with the .php file or java application because I tested it using a different host and it worked. Is there a setting in php.ini I’m missing or a setting I need to change?


If the Content-Type is empty or not recognized in the HTTP message then the PHP $_POST array is empty. If you cannot send the Content-Type you can add this to your PHP:

if(empty($_SERVER['CONTENT_TYPE']))
{ 
 $_SERVER['CONTENT_TYPE'] = "application/x-www-form-urlencoded"; 
}

You can also check if you have the correct settings in your php.ini

; Maximum size of POST data that PHP will accept.
post_max_size = 8M

If post_max_size is 0, PHP will not populate $_POST.

variables_order = "EGPCS"

If you do not have P in there, $_POST will not be set either.


I had this problem too. For future visitors, my issue was missing the trailing slash in the url. Eg..

http://someplace.com/cheeseburger

should have been...

http://someplace.com/cheeseburger/

This was causing the post to fail, in my case.


I was having the same problem. It turned out to be because I was prefixing my target with http . I changed it to https and it worked.


I had the same issue. The problem was http:// and https://


My problem was duplicate names for an input.

ex: /input name="test" type="text" / /input name="test" type="text" /

each must have a different name ex: /input name="testA" type="text" / /input name="testB" type="text" /


My problem appeared out of nowhere. I'm using an apache hack to hide the extension, so all I had to do is to remove .php from the file name and it worked.

/* from: */ action = "folder/filename.php"
/* to: */   action = "folder/filename"

I hope this answer helps someone else in the same situation

0

精彩评论

暂无评论...
验证码 换一张
取 消