2011-05-01 155 views
0

我試圖創建一個使用XMLHttpRequest的提交提交,但我很難有效地將值傳遞給PHP。如何從Javascript傳遞對象和/或多維數組到PHP

+0

http://api.jquery.com/serialize/有什麼問題? – Cyclone 2011-05-01 18:28:44

+0

我猜想它沒有問題。我只是不使用Jquery。我正在尋找一種方法來模擬表單可以構建多維數據並提交它的方式。我以爲我可以做到這一點,而不使用JSON。 – Jason 2011-05-01 18:33:10

+0

雖然它可能對學習很有用,但實際上很少有活動網站或Web應用程序生成原始XMLHttpRequests。使用像jQuery這樣的庫會讓你更容易,正如Cyclone所指出的那樣,它爲您提供了窗體序列化的額外好處。 – 2011-05-01 18:34:19

回答

1

我建議使用JSON格式傳遞您的數據,以及application/json MIME類型。我相信PHP中有用於解析JSON數據的庫。

3

事實上,你的名字可能是你的答案很熱鬧。含義:JSON序列化是在js和PHP之間傳遞數組的好方法。從5.2版本開始,PHP中就有了本地json函數。

json_encodejson_decode

+0

感謝您的回覆。所以我試過使用json_decode;但是我正在向PHP正確獲取數據時遇到問題。在Javascript方面,我對數據使用了JSON.stringify。我有AJAX請求設置爲使用POST,但我似乎無法正確訪問$ _POST中的信息。感謝您的幫助。 – Jason 2011-05-01 22:47:16

3

使用一些現有的庫像jQuery,那麼你就需要編寫自己的客戶端,浪費時間支持不同的瀏覽器等。它不是寫自己一切從頭開始(除非你想了解它)

容易得多
0

Jquery確實使這個很容易。它實際上打開了一些方法來獲取您的數據。

如果您的數據填充了HTML表單,則可以使用Jquery以編程方式通過POST路由將數據提交回服務器。

或者,您也可以設置使用GET或POST請求的AJAX調用,或者像這些其他的chaps建議的那樣,您可以將數據序列化爲JSON(JavaScript Object Notation)並以此方式提交。