2017-07-31 65 views
1

我有一個工作的jQuery程序,談論一個服務器上的PHP程序,我正在從PHP到前端移動JSON數據是沒有問題的。傳遞JSON與jQuery的

現在我需要JSON數據發送到我的後端PHP服務器

當我使用這個語法

'$.post("../wrk/filterquest.php",{ 
    "yesTransactionId" : "yesTransactionId", 
    "oproductOfferId" : "productOfferId" 
    }, 
    function ...' 

我的PHP接收它。我檢查,列出測試文件PHP構建

[email protected] [~/public_html/wrk]# cat test 
filterquestPOST=array (
yesTransactionId => yesTransactionId, 
oproductOfferId => productOfferId, 
) 
GET=array (
) 

然而,當我宣佈一個字符串,並同一JSON手動加載到其中

'poststr = " {\"yesTransactionId\" : \"yesTransactionId\", \"oproductOfferId\" : \"productOfferId\"}";' 

我並嘗試發送它

$.post("../wrk/filterquest.php",poststr, 
function... 

我的php沒有得到它

[email protected] [~/public_html/wrk]# cat test 
filterquestPOST=array (
) 
GET=array (
) 

如果你關心寫我用它來跟蹤貌似

'<?php 

try 
{ 

// Debug 
$debu = "> test"; 
exec($debu); 
$lang_str = var_export($_POST,true); 
$debu = "echo 'filterquestPOST=". $lang_str ."' >test"; 
exec($debu); 
$lang_str = var_export($_GET,true); 
$debu = "echo 'GET=". $lang_str ."' >>test"; 
exec($debu); 
//Open database connection ....' 

測試文件的PHP那麼什麼是語法我需要把JSON字符串中的,並得到該字符串變量到後端服務器? (注意:我可以建立一個javascript數組,並使用JSON.stringify加載多串,但我甚至無法得到這個簡單的字符串移動。

感謝

+1

JSON是不是字符串,但poststr是一個字符串。 – inarilo

回答

0

我試圖通過基本數組存儲在c_char_val。

我曾以爲我已經將它移到一個字符串,並沒有與此命令

var poststr = JSON.stringify(c_char_val); 

但是我發現一個線程說,我不需要那樣做。

相反,我用這個語法,WORKS

$.post("../wrk/filterquest.php",{myData:c_char_val}, 
function(... 

這給了我這樣的結果,當我檢查我的後端服務器傳遞

[email protected] [~/public_html/wrk]# cat test 
filterquestPOST=array (
myData => 
    array (
    Picked => 
    array (
    0 => 
     array (
     char_id => char11, 
     charval_id => 12, 
    ), 
    ), 
), 
) 
GET=array (
)