私はJotFormというフォームプロセッサを使用しています。フォームを提出すると、$ _POSTデータがあなたの選択したURLに送信されます。私がすべてのPOSTデータを印刷しようとすると、何らかの未知の理由で空の配列が得られるしかし、はゴダディでページをホストするときだけです。私はlocalhostでそれをホストし、問題はなかった。私はHenry's "POST Testing Page"という名前の人を使用し、すべてのデータがそこにありました。誰かが_POSTデータがGodaddy Webホスティングサーバーによってブロックされている問題がありましたか?
フォームURL:https://form.jotform.co/71083125989868
のGoDaddyはPOSTレシーバをホスティング:cyoacharters.com/post_test.php
私のPOST受信機のコード:ヘンリーのデータテスターによって受信
<?php print_r ($_POST); ?>
データ:
Time: Wed, 19 Apr 17 06:05:28 -0700
Source ip: 199.77.132.36
Headers (Some may be inserted by server)
REQUEST_URI = /post.php
QUERY_STRING =
REQUEST_METHOD = POST
GATEWAY_INTERFACE = CGI/1.1
REMOTE_PORT = 52455
REMOTE_ADDR = 199.77.132.36
HTTP_ACCEPT_LANGUAGE = en-US,en;q=0.8
HTTP_ACCEPT_ENCODING = gzip, deflate, br
HTTP_REFERER = https://submit.jotform.co/submit/71083125989868/
HTTP_ACCEPT = text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
CONTENT_TYPE = application/x-www-form-urlencoded
HTTP_USER_AGENT = Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36
HTTP_UPGRADE_INSECURE_REQUESTS = 1
HTTP_ORIGIN = https://submit.jotform.co
HTTP_CACHE_CONTROL = max-age=0
CONTENT_LENGTH = 110
HTTP_CONNECTION = close
HTTP_HOST = posttestserver.com
SSL_TLS_SNI = posttestserver.com
HTTPS = on
UNIQUE_ID = WPdgmEBaMGUAAFt7ZmUAAAAD
REQUEST_TIME_FLOAT = 1492607128.5826
REQUEST_TIME = 1492607128
Post Params:
key: 'submission_id' value: '3684163276328228389'
key: 'formID' value: '71083125989868'
key: 'ip' value: '199.77.132.36'
key: 'firstname' value: 'John'
key: 'lastname' value: 'Doe'
key: 'rgb' value: 'Green'
Empty post body.
Upload contains PUT data:
submission_id=3684163276328228389&formID=71083125989868&ip=199.77.132.36&firstname=John&lastname=Doe&rgb=Green
私は多分何かがあなたはそれが事実かもしれないと思うならば、ここでのPHP情報は、GoDaddyはウェブサイト上で私のPHPの設定で無効になっていることを考えていた:cyoacharters.com/phpinfo.php
このときポイント、私は完全に固執しています。どんな洞察力も大いにありがとう!
これを試してください$ jsonData = file_get_contents( 'php:// input'); $ phpArray = json_decode($ jsonData、true) print_r($ phpArray、true); –
@Avihaym - あなたは 'print_r($ phpArray、true);'(配列に 'y'がありません)を意味すると思います。 –
あなたのphp.iniはうまく見えます。 (variables_orderはどのグローバル変数を使用できるかを指定するため、GET、POST、COOKIE、およびSESSIONを意味するGPCSがあります)。 max_input_varsを増やすこともお勧めします。 – Vladut