2016-11-26 18 views
1

我用在我的javascript如下:
jQuery.post("cmssave.php" , html_to_send , done_edit() , "html")如何在php中訪問jquery文章中的數據?

而在PHP結束我試圖用發佈的數據來獲得:
$data = $_POST['somevar']

的問題是(我認爲)我無法找到正在使用的post變量。
當我做var_dump($_POST)
我得到完全相同(在我的日誌):, referer: http://blablabal
然而,當我使用:print_r($_REQUEST, true)
我看到我所有的HTML已發送。 我試過使用以下來獲取正確的數據:
$_POST , $_POST[''] , $_POST[0] , $_POST["data"] , $_POST['html_to_send']
但我什麼也沒得到。我錯過了什麼,或者我需要以某種方式在JavaScript中分配該變量?如果是這種情況,我該怎麼做?

+0

什麼是** html_to_send的價值**? – Berger

+0

@Berger它是'document.getElementsByTagName('html')[0] .innerHTML' – linuxuser42

回答

0

您可以定義要在jQuery來使用這樣的帖子變量:

var data = { 
    somevar: 'my post value' 
} 
jQuery.post("cmssave.php" , data, done_edit , "html"); 

而且你可能想assing成功的功能(done_edit)沒有括號,否則你會召喚成功的功能,確定它的回報價值。

而在PHP中你會得到這樣的價值:

$data = $_POST['somevar']; 
echo $data; 
+0

在你的例子中,我實際上必須做'somevar:html_to_send'。這有效嗎?我試過了,我得到了完全相同的結果。 html_to_send實際上是'document.getElementsByTagName('html')[0] .innerHTML'如果 – linuxuser42

+0

您確定請求已發送?檢查你的js開發工具中的javascript錯誤 –

+0

所以仍然不知道發生了什麼,但顯然當我使用'file_get_contents(「php:// input」)時我得到的數據'不確定這是什麼,但使用該位代碼而不是'$ _POST ['somevar'};' – linuxuser42