2015-05-09 89 views
0

我將多個數據元素存儲到MySQL數據庫中。當我查詢數據庫時,我用JSON返回所有數據。其中一個數據字段是可能包含多行的「描述」數據字段。當我嘗試解析JSON對象時,出現一個錯誤,說我的JSON對象中不能有多行字符串。什麼是替代方案或解決方法,這樣我可以得到這個?JSON中有多行的字符串

+0

爲什麼你不保存它,因爲它是通過將列數據類型更改爲長文本 –

+0

與論壇網站不同,我們不使用「謝謝」或「任何幫助表示」,或在[so]上簽名。請參閱「[應該'嗨','謝謝',標語和致敬從帖子中刪除?](http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations-be –

回答

1

插入數據庫時​​,您不得正確編碼您的json字符串。下面是不是有效的JSON:

{"description": "First line 
Second line"} 

你需要的是:

{"name": "First line\nSecond line"} 

的\ n是一個有效的換行符。你如何在插入時獲得json數據?如果您有一個php對象或數組,請使用json_encode()來獲取正確的值。如果您正在從現有字符串中獲取數據,則會遇到更深層的麻煩 - 任何源代碼都不應該使用字面換行符來生成json。這聽起來像你的json字符串的源代碼是手寫的或自定義編碼,而不是用適當的json工具構建。

+0

來源是來自MySQL數據庫中一個名爲「description」的數據字段,它只是一個簡單的字符串,尚未被操作 –

+0

description字段是您存儲值的位置。但是某人或某個腳本會將該值插入表格中該行的該列中,我建議可能無論是哪個人或哪個人在列中插入值,都會產生錯誤。 – 2015-05-21 01:26:48