Pregunta sobre php, mysql, json – Parse JSON a mySQL

1

Una secuencia JSON en mi script PHP que se parece a esto (matriz con cualquier objeto):

[
    {
        "source":"symbols/2/2.png",
        "ypos":133,
        "template":"8B82CA47-41D2-D624-D6A2-37177CD82F28",
        "rotation":0,
        "type":"MyImage",
        "width":252,
        "depth":5,
        "height":159,
        "xpos":581
    },
    {
        "source":"symbols/2/2.png",
        "ypos":175,
        "template":"8B82CA47-41D2-D624-D6A2-37177CD82F28",
        "rotation":0,
        "type":"MyImage",
        "width":258,
        "depth":3,
        "height":163,
        "xpos":214
    },
    {
        "color":"0",
        "ypos":468.38,
        "fontSize":28,
        "xpos":156.95,
        "rotation":0,
        "type":"MyTextArea",
        "width":268.05,
        "depth":7,
        "height":244.62,
        "fontFamily":"Verdana Bold",
        "template":"8B82CA47-41D2-D624-D6A2-37177CD82F28"
    }
]

¿Cómo puedo guardar cada objeto JSON en esta matriz con un registro en mySQL?

@Astraport comprueba la respuesta :-) Vimalnath
Pensé que acabo de responder esto en otro lugar zinking

Tu respuesta

2   la respuesta
6

Prueba esto:

<?php
$json = '[
    {
        "source":"symbols/2/2.png",
        "ypos":133,
        "template":"8B82CA47-41D2-D624-D6A2-37177CD82F28",
        "rotation":0,
        "type":"MyImage",
        "width":252,
        "depth":5,
        "height":159,
        "xpos":581
    },
    {
        "source":"symbols/2/2.png",
        "ypos":175,
        "template":"8B82CA47-41D2-D624-D6A2-37177CD82F28",
        "rotation":0,
        "type":"MyImage",
        "width":258,
        "depth":3,
        "height":163,
        "xpos":214
    },
    {
        "color":"0",
        "ypos":468.38,
        "fontSize":28,
        "xpos":156.95,
        "rotation":0,
        "type":"MyTextArea",
        "width":268.05,
        "depth":7,
        "height":244.62,
        "fontFamily":"Verdana Bold",
        "template":"8B82CA47-41D2-D624-D6A2-37177CD82F28"
    }
]';
//create a DB connection
con = mysql_connect("localhost","username","password");
mysql_connect _db('your_database',$con);


$result = json_decode($json);
foreach($result as $key => $value) {
    if($value) {

            //how to use json array to insert data in Database
        mysql_query("INSERT INTO tablename (source, ypos, template) VALUES ($value->source, $value->ypos,$value->template)");
    }
    mysql_close($con);
}

Nota: Pero se recomienda usar objetos de datos PHP (PDO) para realizar operaciones de base de datos. Comprobaraquí

Gracias, Vimalnath. El código tiene pequeños errores, pero eso es exactamente lo que estaba buscando. Astraport
1

los valores de la matriz

Preguntas relacionadas