2011-01-20 100 views
1

我试图用ajax发送编码的google地图多段线到服务器以将它们保存在数据库中。我发送他们通过JSON和解码他们在服务器端。问题是当折线太长时,json_decode()函数将不再解码json字符串。即时通讯使我的ajax调用后,我已经尝试了几个东西,像逃避多义线等,但没有任何工作!用json通过ajax发送编码多段线到服务器的问题

工作JSON例如:

{"title":"a", 
"type":"custom", 
"POIS":["46","43"], 
"polylines":[{ 
    "points": "oot|[email protected]{[email protected][email protected]@@eAxD~ClBpAxC`[email protected]@zA|@[email protected]@wAdBeB|C}[email protected]}A", 
    "levels": "PEFEFGEFFEEFGEFEFEP" 
}] 
} 

不工作JSON例如:

{"title":"a", 
"type":"custom", 
    "POIS":["46","43"], 
    "polylines":[{ 
    "points": "uip|Hc|[email protected]@GXoC`TwJV?VPvAhElAxF^[email protected]@[email protected]][email protected]@[email protected]^[email protected]`[email protected]~EsAdHaEzPyDpMw\[email protected]`MmDfNuDnMuA~D_BpDiEhHcF|[email protected]|hAjJvU`[email protected]|[email protected]|@fAjGF|[email protected]|[email protected]`DfAbCHM`[email protected]@|[email protected]@[email protected]@`@`@[email protected]`@E`@L`@[email protected]|EvF~CmMHInGfF|@[email protected]`@bBjAnGnAdLXjFJpCDtLSlIiBj`@[email protected]@tE`@[email protected]|A|[email protected]~CtI`FbMX`@\[email protected]`@WbEuFrD_HxBhBrDnBlGfCjFnAX\B`@[email protected]|@[email protected]@`[email protected]@F\[email protected]@lA", 
    "levels": "PFFEGEEFFEGEEEFFEFEGEEFFEEEFEEEFEFEGEEFEEEFFFEFEFEEEFEEEFEEFFEFEGEFFEFEFEFEEEFEFEEFFFEEFEFEFFEEGEEEFEEFEFEFEFEGEFEFEEGEEFEGEFEEGEEFEEFEEFEFP" 
    }] 
} 
+0

你有`json_decode`函数的来源吗?这个功能来自哪里? – 2011-01-20 16:26:52

回答

1

你需要逃避某些字符在财产。

快速浏览您的编码折线表明您的字符序列大约是字符串的五分之一。

反斜杠应该用反斜杠转义。因此,这看起来应该像"DpMw\\zaA"

你也应该逃避你的JSON双引号作为财产构造有开始和结束双引号。

相关问题