2015-05-04 4 views
1

Привет Я пытаюсь вставить json-массив в мою базу данных MySQL. С массивом json-данных от клиента android.Как вставить данные массива json в mysql?

{"message":[ {"body":"Fdsa","_id":"114","status":"-1","address":"null","read":"1","type":"3","date":"1429781969573","thread_id":"2"},{"body":"wtf2","_id":"113","status":"0","address":"","read":"1","type":"1","date":"1429590050090","thread_id":"1"}, {"body":"wtf2","_id":"112","status":"0","address":"","read":"1","type":"1","date":"1429590050090","thread_id":"1"}]} 

Как разобрать данные json в базе данных?

$message_data = json_decode($data,true); 

printf($message_data['message']);die; 
+0

Где коды MySQL? – Raptor

+0

после того, как вы расшифровали строку JSON с этим флагом 'true', это будет ваш обычный массив. просто обработайте его, как обычно, и используйте PDO или MySQLi API, чтобы сделать свои вставки – Ghost

+0

, но не разобрать строку «message» –

ответ

0

ваши данные:

{ 
    "message": [ 
     { 
      "body": "Fdsa", 
      "_id": "114", 
      "status": "-1", 
      "address": "null", 
      "read": "1", 
      "type": "3", 
      "date": "1429781969573", 
      "thread_id": "2" 
     }, 
     { 
      "body": "wtf2", 
      "_id": "113", 
      "status": "0", 
      "address": "", 
      "read": "1", 
      "type": "1", 
      "date": "1429590050090", 
      "thread_id": "1" 
     }, 
     { 
      "body": "wtf2", 
      "_id": "112", 
      "status": "0", 
      "address": "", 
      "read": "1", 
      "type": "1", 
      "date": "1429590050090", 
      "thread_id": "1" 
     } 
    ] 
} 

когда json_decode($data)

это будет объект как это

stdClass Object 
(
    [message] => Array 
     (
      [0] => stdClass Object 
       (
        [body] => Fdsa 
        [_id] => 114 
        [status] => -1 
        [address] => null 
        [read] => 1 
        [type] => 3 
        [date] => 1429781969573 
        [thread_id] => 2 
       ) 

      [1] => stdClass Object 
       (
        [body] => wtf2 
        [_id] => 113 
        [status] => 0 
        [address] =>
        [read] => 1 
        [type] => 1 
        [date] => 1429590050090 
        [thread_id] => 1 
       ) 

      [2] => stdClass Object 
       (
        [body] => wtf2 
        [_id] => 112 
        [status] => 0 
        [address] =>
        [read] => 1 
        [type] => 1 
        [date] => 1429590050090 
        [thread_id] => 1 
       ) 

     ) 

) 

, но если вы сделаете это json_decode($data, true)

Array 
(
    [message] => Array 
     (
      [0] => Array 
       (
        [body] => Fdsa 
        [_id] => 114 
        [status] => -1 
        [address] => null 
        [read] => 1 
        [type] => 3 
        [date] => 1429781969573 
        [thread_id] => 2 
       ) 

      [1] => Array 
       (
        [body] => wtf2 
        [_id] => 113 
        [status] => 0 
        [address] =>
        [read] => 1 
        [type] => 1 
        [date] => 1429590050090 
        [thread_id] => 1 
       ) 

      [2] => Array 
       (
        [body] => wtf2 
        [_id] => 112 
        [status] => 0 
        [address] =>
        [read] => 1 
        [type] => 1 
        [date] => 1429590050090 
        [thread_id] => 1 
       ) 

     ) 

) 

после этого вы можете вставить его в БД с Еогеасп ваш $message_data->message или $message_data['message']

Смежные вопросы