2010-07-08 47 views
0

我有幾個領域產生JSON數據的頁面,我想將它發送到MySQL數據庫。 我目前有一個鏈接,用戶點擊鏈接,javascript會將他們輸入的信息發送給服務器。由於性質,我需要在mysql數據庫中的一個字段中的所有數據。有任何想法嗎?使用jQuery/javascript/php發送json對象到mysql?

編輯: 本數據來源於幾個CONTENTEDITABLE div的,以這樣的方式,有一個特定的層次。 如

Data : { 
    Heading : 1, 
    info1 : 1, 
    info2 : 2, 
    info3 : 3 
    },{ 
    Heading : 2, 
    info1 : 1, 
    info2 : 2, 
    info3 : 3 
    } 
+0

在未來的某個時刻,你或你愛的人會意識到,「在一個字段中的所有數據在MySQL數據庫」存儲是一個*壞主意*。 – Dolph 2010-07-08 00:37:52

回答

1

您可以使用AJAX職位。例如:

$.ajax({ 
    url: someURL, 
    type: 'post', 
    data: JSON.stringify(myObj), 
    contentType: 'application/json', 
    dataType: 'json', 
    success: function(data, status, xhr) 
    { 
     // ... 
    } 
}); 

要確保您有JSON.stringify,請使用json2。該contentType意味着你要發送一個JSON文件,該dataType意味着您希望收到一個從服務器。

在服務器上,您使用json_decode解碼,並json_encode編碼的響應。

+0

謝謝,stringify是我需要的。我從來沒有聽說過。 – DavidR 2010-07-08 00:46:22

0

也許你可以使用「序列化」的概念?

在jQuery中:http://api.jquery.com/serialize/

在PHP:http://us.php.net/manual/en/function.serialize.php

所以,你會採取所有的輸入,通過jQuery序列化,發送大串到服務器和存儲在數據庫中的,是什麼?然後,當你在php中檢索它時,你可以將它非傳統化。

+0

'serialize'不*輸出JSON。 – 2010-07-08 00:34:37

+0

JSON *是一個序列化對象。 – Dolph 2010-07-08 00:36:10

+0

但你可以很容易地反序列化在PHP中,然後json_encode,不是? – 2010-07-08 00:36:44