2017-07-28 31 views
0

我试图通讯形式的数据发布到一个php页面ajax但是当我在php页面上呼应$_SERVER['REQUEST_METHOD']它打印GET(无变量)。我在多个网站上使用了类似的代码,没有任何问题。 (jquery v3.2.1

$.ajax({ 
      method: 'post', 
      dataType: 'json', 
      url: '<?=$site_url?>/templates/xxxx/contact_send/email_send.php', 
      data: JSON.stringify(dataString), 
      contentType: 'application/JSON;charset=UTF-8', 
      success: function() { 
       console.log('success'); 
      } 
     }); 

网络登录

Network log

回声$ _SERVER [ 'REQUEST_METHOD'] echo $_SERVER['REQUEST_METHOD']

响应

Response

+0

做'var_dump($ _ SERVER ['REQUEST']);'以查看您的变量是否在任何地方。 – Miro

+0

完成了。返回NULL。 –

回答

1

浏览器的方法是GET ....(第二图像)

你应该看到网络日志图像的响应

+0

那么你的问题呢?你调用AJAX POST到PHP,它的响应POST(右),并且你在浏览器响应GET(右)中连接到URL,你想要什么结果? –

+0

它没有通过if($ _SERVER ['REQUEST_METHOD'] =='POST')条件加上我没有数据在php代码中使用。 –

+0

也许你可以通过php代码? –

0

我会尝试通过使一个新的HTML文件,只是你的JavaScript代码来缩小问题在它发送一些假数据和一个新的PHP文件,只是echo $SERVER['REQUEST'];如果它的工作,你有一些额外的代码搞砸了。否则,这是一些服务器问题。你确定你没有.htaccess禁止POST?尝试将此添加到.htaccess Access-Control-Allow-Methods: POST, GET, OPTIONS