2017-02-15 6 views
0

Как разделить этот json-объект на 3 часть idawnser и type?Разделить столбцы json Объект для большего количества столбцов через PHP

[{"id":"26","answer":[{"option":"3","text":"HIGH"}],"type":"a"}, 
{"id":"30","answer":[{"option":"3","text":"LOW"}],"type":"b"}, 
{"id":"31","answer":[{"option":"3","text":"LOW"}],"type":"c"}] 

И дб Имя: array Имя таблицы: user_survey_start JSON Имя столбца: survey_answers, Это мой код:

 <?php 
    $con=mysqli_connect("localhost","root","","arrayy"); 
    // Check connection 
    if (mysqli_connect_errno()) 
     { 
     echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
     } 
$sql="SELECT `survey_answers` FROM `user_survey_start`"; 

if ($result=mysqli_query($con,$sql)){ 

while ($row = mysqli_fetch_row($result)){ 
} 
mysqli_close($con); 
?> 
+0

расщепленный на 3 объектов JSon? '{" id ":" 26 "}' '{" answer ": [{" option ":" 3 "," text ":" HIGH "}]}' '{" type ":" a "}' – mith

+0

Могу ли я иметь что-то вроде этого? '26,30,31' и' High, low.low' и 'a, b, c' // Это одна строка после этой следующей строки –

ответ

1

Попробуйте использовать json_decode()

<?php 
$sql="SELECT `survey_answers` FROM `user_survey_start`"; 

if ($result=mysqli_query($con,$sql)) 
{ 

while ($row = mysqli_fetch_row($result)) 
{ 

    $json = $row[0]; 
    $jason_array = json_decode($json,true); 
    foreach ($jason_array as $data){ 
     $id[] = $data['id']; 
     $answer[] = $data['answer']; 
     $type[] = $data['type']; 

     // here code to insert/update values to db column 
    } 

    echo implode(',',$id); 
    echo implode(',',$answer); 
    echo implode(',',$type); 
    } 

} 
+0

Мне нужен код для чтения ** phpMyAdmin jsons Column ** ... ..I Mean Это строка строк. –

+0

Вы не получаете данные, используя свой запрос '$ sql =" SELECT survey_answers FROM user_survey_start ";' ?? @SedricHeidarizarei – mith

+0

Я новичок в программировании, Можете ли вы написать мне правильный код с моим Db Name и Db Table? '$ json = all Row of the Column' –