2014-05-20 44 views
1

我有一个带有文本字段的表格。我接收到如下的字符串:如何在mysql字段中保存json字符串

“值”: “{\” airwayBills \ “:[\” 84498761 \ “],\” 日程\ “:[\” 1652395 \ “],\” 错误\“: false,\“muditaError \”:[{\“actionType \”:\“docket \”,\“docketNo \”:\“1652395 \”,\“errorMessage \”:\“没有错误\”,\“ pieceList \ “:空,\” 量\ “:\” 1 \ “}],\” muditaManifestExtra \ “:\” 未知\ “\ ”thingDetails \“:[{\ ”航空公司\“:\” 未知\ “,\”bookingDate \“:\”19-05-2014 13:03:15 + 0530 \“,\”currentPiecesDelivered \“:\”0 \“,\”currentPiecesManifested \“:\”1 \ “目的地\”:\ “GOI \”,\ “飞行\”:\ “未知\”,\ “inScannedPieces \”:[],\ “locationId \”:\ “MUDDELHUB1 \”,\ “模式\”: \ “空气\” \ “号码\”:\ “1652395 \”,\ “序数\”:\ “0 \”,\ “原点\”:\ “DEL \”,\ “outScannedPieces \”:[] ,“数量”:\“1 \”,\“recipientEmailId \”:\“未知\”,\“serviceProvider \”:\“未知\”,\“发货人\”:\“Vector E Commerce Pvt。有限公司\ “\ ”thingType \“:\ ”案卷\“,\ ”totPiecesManifested \“:\ ”1 \“ \ ”totalPiecesDelivered \“:\ ”0 \“,\ ”重量\“:\” 11 \“}]}”,

该值会正确存储在表中的一个字段内,但是当我尝试获取该值并将其保存在另一个表的另一个字段中时,则会显示一些值,如“airwayBills \” :[\“84498761 \”]存储为“airwayBills \”:[“0”],这会导致数据丢失。还有一种奇怪的行为是随机发生的,只有一些记录。一些记录被正确添加。为了保存到另一个字段中,我只是将字符串放在单引号中以保存字符串。

请帮助如何将它保存在Mysql的单个字段中。请注意,上述值在第一个表上的GROUP_CONCAT查询之后。

在此先感谢

+4

这个JSON是无效的 –

+0

谢谢你看问题,但我需要将上面提到的字符串保存在mysql字段中 – user3655473

+1

我明白了,但是如果您无法用所有基本信息(例如相关代码,有效输入日期)形成正确的问题,您不能指望这里的人放弃尝试帮你 –

回答

0

考虑变量名$ json_string作为包含(在您的文章)在给定状态的JSON的一个,尝试stripslashes试图将其插入到数据库之前。

这里有一个额外的问题,你是使用字符串连接或使用php数组和json_encode手动构建json数组吗? (第二个会让你更容易,因为当你需要添加在第一次提到的查询运行后获得的JSON,你可以只做json_encode和你完成)

相关问题