我想使用Ajax向PHP發送POST請求。Ajax POST方法不能在PHP中工作,但GET正在工作
如果我使用GET,它可以正常工作,但使用POST時,我在php中收到的數據是空的。 我將數據作爲json發送。
這是js代碼的樣子:
$.ajax(
{
type: 'POST',
url: 'php/GiveItBack.php',
contentType: "json",
data: {
word: 'abc'
},
success: function (json) {
alert(json);
},
error: function (jqXHR, textStatus, errorThrown) { alert('ERROR: ' + errorThrown); }
});
這是PHP/GiveItBack.php文件
<?php
$x = $_GET['word'];
echo 'Get: ' . $x;
$x = $_POST['word'];
echo '; Post: ' . $x;
$x = $_REQUEST['word'];
echo '; Request: ' . $x . ';';
?>
有了這個代碼,在警報窗口的消息是這樣的:
獲取:帖子:;要求:;與型「POST」的js文件:
如果我更換型「GET」這是結果我在警報窗口獲取(因爲我是期待看到):
Get:abc;帖子:;要求:abc;
我看不到我在這裏失蹤的東西。 代碼中出現錯誤,或者是我需要爲此工作的任何特殊設置。
通過我公司採用的方式:jQuery的2.2.4.min和PHP V5.6和XAMPP V3.2.2。
謝謝。
你檢查你的的phpinfo? POST是否被激活? –
這條線**; enable_post_data_reading =關**評論缺省情況下爲上。所以我猜這是激活的。 – Horatiu
嘗試打印而不是回聲,不太確定爲什麼,但過去使用echo的問題 –