I have a custom CMS i've built that works perfectly on my dev box (Ubuntu/PHP5+/MySQL5+).
I just moved it up to the production box for my client and now all form submissions are showing up as empty $_POST arrays.
I found a trick to verify the data is actually being passed using file_get_contents('php://input');
and the data is showing up fine there -- the $_POST
/$_REQUEST
arrays are always empty.
I've also verified the content-type headers are correct as well via firebug (application/x-www-form-urlencoded; charset=utf-8
).
This issue is happening regardless of whether a form is submitting via AJAX or a regular form submit.
Any help is greatly appreciated!
I know this question was about POST via a Form, but came here looking for answers for similar issue when POSTing with JSON content-type. Found the answer and wanted to share it as it cost me much time.
When using JSON content-type the $_POST array will not populate (only with multi-part forms I believe)
Here is what did work to correct the issue:
$rest_json = file_get_contents("php://input");
$_POST = json_decode($rest_json, true);
hope this helps someone!