Structure of a chained JSON

1

I was developing a web application, where I needed to use JSON, I had some problems, but I did. Now I need to leave everything on the dynamic application page, so everything has to be passed through JSON, but I've never done a JSON with multiple threads, so I do not know if it's correct the way I did and I do not know if there is any difference in the time of catch with JS.

The following is the JSON I'm creating to test:

{
    "cidade1":[{
                "txtheader":{"Lorem Ipsum dolor"},
                "chart1":[{"valor1":30,"valor2":350}],
                "chart2":[{"valor1":500,"valor2":400,"valor3":170,"valor4":460}],
                "chart3":[{"valor1":1000,"valor2":400,"valor3":1170,"valor4":1460,"valor5":660,"valor6":1120,"valor7":1030,"valor8":540}],
                "tabela":[
                            {"Fornecedor": "fff","Trecho":"ttt","Data":"12/09/2015","Passageiro": "Pedro","Confirmação":"Não","Localizador":"Sim",
                            "LocalizadorGds":"Não","Numero da solicitacao":1002,"Status da Integracao": "Ativo","Identificador": "Não"}
                        ]
               }],
    "cidade2":[{
                "txtheader":{"Lorem Ipsum dolor"},
                "chart1":[{"valor1":30,"valor2":350}],
                "chart2":[{"valor1":500,"valor2":400,"valor3":170,"valor4":460}],
                "chart3":[{"valor1":1000,"valor2":400,"valor3":1170,"valor4":1460,"valor5":660,"valor6":1120,"valor7":1030,"valor8":540}],
                "tabela":[
                            {"Fornecedor": "fff","Trecho":"ttt","Data":"12/09/2015","Passageiro": "Pedro","Confirmação":"Não","Localizador":"Sim",
                            "LocalizadorGds":"Não","Numero da solicitacao":1002,"Status da Integracao": "Ativo","Identificador": "Não"}
                        ]
               }]
}

I would enter several different cities, in case I only put two, but they will have the same structure.

Illustrated example:

All the data on this page needs to come from JSON, to the text I called txtheader and the data for the graphics.

Inthisimagebelow,itshowsthe<option>thatwillalsobedynamicandwhenselecteditloadsjsonandloadsthedata.

Thisisthetablethatislinkedtothechart:

    
asked by anonymous 18.09.2015 / 18:35

2 answers

3

Always keep in mind that the JSON information representation obeys the following rule: for each value, a name (or label) describing its meaning is given.

Example:

"nome" : "José"

For example: If I needed more information about Joseph, type age (integer) and if he has a Boolean, the information would look like this:

"nome": "José",
"idade" : 52,
"habilitado": true

See how it works? So, from these basic types, you can build more complex types, such as arrays and objects .

Arrays are enclosed in brackets, with their elements separated by commas.

Example:

["Maria", "João", "Joaquim"]

Objects are delimited by keys and can be composed of multiple name / value pairs, as well as arrays and other objects.

Example:

    {
        "nome": "José",
        "idade": 52,
        "habilitado": true,
        "filhos": [
            "Maria",
            "João",
            "Joaquim"
        ]
    }

In this way, you can create an array of objects.

Example:

[
    {
        "nome": "José",
        "idade": 52,
        "habilitado": true,
        "filhos": [
            "Maria",
            "João",
            "Joaquim"
        ]
    },
    {
        "nome": "Sebastião",
        "idade": 50,
        "habilitado": false,
        "filhos": [
            "Pedro"
        ]
    }
]

To validate your JSON, you can use this site: link

References: link

    
18.09.2015 / 20:00
1

I suggest you make the array structure, and then convert it to json:

$array_data = array(
'cidade1'=>array(
                 'textheader'=>'Lorem Ipsum dolor',
                 'chart1'=>array('valor1'=>30, 'valor2'=>350),
                 'chart2'=>array('valor1'=>500,'valor2'=>400,'valor3'=>170, 'valor4'=>460),
                 'chart3'=>array('valor1'=>1000,'valor2'=>400,'valor3'=>1170, 'valor4'=>1460,'valor5'=>660,'valor6'=>1120,'valor7'=>1030,'valor8'=>540),
                 'tabela'=>array("Fornecedor"=>"fff","Trecho"=>"ttt","Data"=>"12/09/2015","Passageiro"=> "Pedro","Confirmação"=>"Não","Localizador"=>"Sim",
                            "LocalizadorGds"=>"Não","Numero da solicitacao"=>1002,"Status da Integracao"=>"Ativo","Identificador"=>"Não")
           ),
'cidade2'=>array(
                 'textheader'=>'Lorem Ipsum dolor',
                 'chart1'=>array('valor1'=>30, 'valor2'=>350),
                 'chart2'=>array('valor1'=>500,'valor2'=>400,'valor3'=>170, 'valor4'=>460),
                 'chart3'=>array('valor1'=>1000,'valor2'=>400,'valor3'=>1170, 'valor4'=>1460,'valor5'=>660,'valor6'=>1120,'valor7'=>1030,'valor8'=>540),
                 'tabela'=>array("Fornecedor"=>"fff","Trecho"=>"ttt","Data"=>"12/09/2015","Passageiro"=> "Pedro","Confirmação"=>"Não","Localizador"=>"Sim",
                            "LocalizadorGds"=>"Não","Numero da solicitacao"=>1002,"Status da Integracao"=>"Ativo","Identificador"=>"Não")
           )
);
echo json_encode($array_data);

If you are using PHP 4.5 or higher:

 $array_data = [
    'cidade1'=> [
                     'textheader'=>'Lorem Ipsum dolor',
                     'chart1'=> ['valor1'=>30, 'valor2'=>350],
                     'chart2'=> ['valor1'=>500,'valor2'=>400,'valor3'=>170, 'valor4'=>460],
                     'chart3'=> ['valor1'=>1000,'valor2'=>400,'valor3'=>1170, 'valor4'=>1460,'valor5'=>660,'valor6'=>1120,'valor7'=>1030,'valor8'=>540],
                     'tabela'=> ["Fornecedor"=>"fff","Trecho"=>"ttt","Data"=>"12/09/2015","Passageiro"=> "Pedro","Confirmação"=>"Não","Localizador"=>"Sim",
                                "LocalizadorGds"=>"Não","Numero da solicitacao"=>1002,"Status da Integracao"=>"Ativo","Identificador"=>"Não"]
               ],
    'cidade2'=> [
                     'textheader'=>'Lorem Ipsum dolor',
                     'chart1'=> ['valor1'=>30, 'valor2'=>350],
                     'chart2'=> ['valor1'=>500,'valor2'=>400,'valor3'=>170, 'valor4'=>460],
                     'chart3'=> ['valor1'=>1000,'valor2'=>400,'valor3'=>1170, 'valor4'=>1460,'valor5'=>660,'valor6'=>1120,'valor7'=>1030,'valor8'=>540],
                     'tabela'=> ["Fornecedor"=>"fff","Trecho"=>"ttt","Data"=>"12/09/2015","Passageiro"=> "Pedro","Confirmação"=>"Não","Localizador"=>"Sim",
                                "LocalizadorGds"=>"Não","Numero da solicitacao"=>1002,"Status da Integracao"=>"Ativo","Identificador"=>"Não"]
               ]
    ];
 echo json_encode($array_data);

Converted would be this:

  {
   "cidade1":
       {
        "textheader":"Lorem Ipsum dolor",
        "chart1":{"valor1":30,"valor2":350},
        "chart2":{"valor1":500,"valor2":400,"valor3":170,"valor4":460},
        "chart3":{"valor1":1000,"valor2":400,"valor3":1170,"valor4":1460,"valor5":660,"valor6":1120,"valor7":1030,"valor8":540},
        "tabela":{"Fornecedor":"fff","Trecho":"ttt","Data":"12\/09\/2015","Passageiro":"Pedro","Confirma\u00e7\u00e3o":"N\u00e3o","Localizador":"Sim","LocalizadorGds":"N\u00e3o","Numero da solicitacao":1002,"Status da Integracao":"Ativo","Identificador":"N\u00e3o"}
        },
   "cidade2":
       {
       "textheader":"Lorem Ipsum dolor",
        "chart1":{"valor1":30,"valor2":350},
        "chart2":{"valor1":500,"valor2":400,"valor3":170,"valor4":460},
        "chart3":{"valor1":1000,"valor2":400,"valor3":1170,"valor4":1460,"valor5":660,"valor6":1120,"valor7":1030,"valor8":540},
        "tabela":{"Fornecedor":"fff","Trecho":"ttt","Data":"12\/09\/2015","Passageiro":"Pedro","Confirma\u00e7\u00e3o":"N\u00e3o","Localizador":"Sim","LocalizadorGds":"N\u00e3o","Numero da solicitacao":1002,"Status da Integracao":"Ativo","Identificador":"N\u00e3o"}
       }
  }

Now let's assume you want to get the request status of the first table just through javascript.

Run this on your console:

var col =  {
       "cidade1":
           {
            "textheader":"Lorem Ipsum dolor",
            "chart1":{"valor1":30,"valor2":350},
            "chart2":{"valor1":500,"valor2":400,"valor3":170,"valor4":460},
            "chart3":{"valor1":1000,"valor2":400,"valor3":1170,"valor4":1460,"valor5":660,"valor6":1120,"valor7":1030,"valor8":540},
            "tabela":{"Fornecedor":"fff","Trecho":"ttt","Data":"12\/09\/2015","Passageiro":"Pedro","Confirma\u00e7\u00e3o":"N\u00e3o","Localizador":"Sim","LocalizadorGds":"N\u00e3o","Numero da solicitacao":1002,"Status da Integracao":"Ativo","Identificador":"N\u00e3o"}
            },
       "cidade2":
           {
           "textheader":"Lorem Ipsum dolor",
            "chart1":{"valor1":30,"valor2":350},
            "chart2":{"valor1":500,"valor2":400,"valor3":170,"valor4":460},
            "chart3":{"valor1":1000,"valor2":400,"valor3":1170,"valor4":1460,"valor5":660,"valor6":1120,"valor7":1030,"valor8":540},
            "tabela":{"Fornecedor":"fff","Trecho":"ttt","Data":"12\/09\/2015","Passageiro":"Pedro","Confirma\u00e7\u00e3o":"N\u00e3o","Localizador":"Sim","LocalizadorGds":"N\u00e3o","Numero da solicitacao":1002,"Status da Integracao":"Ativo","Identificador":"N\u00e3o"}
           }
      };

console.log(col.cidade1.tabela['Numero da solicitacao']);

Here is an example of using array:

var seu_json = {
                "cidade1":
                    [{
                      "id":1,
                      "textheader":"Lorem Ipsum dolor",
                      "chart1":[{"valor1":30,"valor2":350 }],
                      "chart2":[{"valor1":500,"valor2":400,"valor3":170, "valor4":460 }],
                      "chart3":[{"valor1":1000,"valor2":400,"valor3":1170, "valor4":1460, "valor5":660,"valor6":1120,"valor7":1030,"valor8":540 }],
                      "tabela":[{"Fornecedor":"fff","Trecho":"ttt","Data":"12/09/2015","Passageiro":"Pedro","Confirmação":"Não","Localizador":"Sim",
                                "LocalizadorGds":"Não","Numero da solicitacao":1002,"Status da Integracao":"Ativo","Identificador":"Não"}]
                    }],
            "cidade2":
                    [{
                      "id":2,
                      "textheader":"Lorem Ipsum dolor",
                      "chart1":[{"valor1":30,"valor2":350 }],
                      "chart2":[{"valor1":500,"valor2":400,"valor3":170, "valor4":460 }],
                      "chart3":[{"valor1":1000,"valor2":400,"valor3":1170, "valor4":1460, "valor5":660,"valor6":1120,"valor7":1030,"valor8":540 }],
                      "tabela":[{"Fornecedor":"fff","Trecho":"ttt","Data":"12/09/2015","Passageiro":"Pedro","Confirmação":"Não","Localizador":"Sim",
                                "LocalizadorGds":"Não","Numero da solicitacao":1002,"Status da Integracao":"Ativo","Identificador":"Não"}]
                    }]
           };
console.log(seu_json);
    
18.09.2015 / 19:47