Leitura Json - Foreach

Enviada por Vitor 
Vitor
Leitura Json - Foreach
13 de May de 2014 às 02:48PM
Pessoal, estou tentando fazer a leitura das informações em Json, porem quando entra mais de 1 regra não consigo vou postar o script se alguem conseguir me explicar fico muito agradecido.
Não consigo fazer a leitura dos itens pages..

Postar o Json que recebo.


{"3890687":{"summonerId":3890687,"pages":[{"id":7208618,"name":"ADHybrido","current":false,"masteries":[{"id":4211,"rank":2},{"id":4121,"rank":1},{"id":4213,"rank":2},{"id":4124,"rank":1},{"id":4114,"rank":1},{"id":4222,"rank":3},{"id":4112,"rank":4},{"id":4221,"rank":1},{"id":4122,"rank":3},{"id":4152,"rank":3},{"id":4141,"rank":1},{"id":4111,"rank":1},{"id":4132,"rank":1},{"id":4142,"rank":3},{"id":4232,"rank":1},{"id":4162,"rank":1},{"id":4131,"rank":1}]},{"id":7208619,"name":"AATROX","current":false,"masteries":[{"id":4212,"rank":2},{"id":4211,"rank":2},{"id":4134,"rank":3},{"id":4222,"rank":3},{"id":4112,"rank":4},{"id":4221,"rank":1},{"id":4122,"rank":3},{"id":4152,"rank":3},{"id":4141,"rank":1},{"id":4111,"rank":1},{"id":4132,"rank":1},{"id":4142,"rank":3},{"id":4232,"rank":1},{"id":4162,"rank":1},{"id":4131,"rank":1}]},{"id":7208620,"name":"Blitz","current":false,"masteries":[{"id":4212,"rank":2},{"id":4353,"rank":3},{"id":4362,"rank":1},{"id":4213,"rank":2},{"id":4322,"rank":3},{"id":4334,"rank":1},{"id":4344,"rank":2},{"id":4214,"rank":1},{"id":4352,"rank":1},{"id":4323,"rank":1},{"id":4314,"rank":1},{"id":4331,"rank":3},{"id":4324,"rank":1},{"id":4312,"rank":3},{"id":4313,"rank":3},{"id":4342,"rank":1},{"id":4341,"rank":1}]},{"id":7208621,"name":"Talentos-175114","current":false,"masteries":[{"id":4233,"rank":3},{"id":4121,"rank":1},{"id":4214,"rank":2},{"id":4213,"rank":2},{"id":4152,"rank":2},{"id":4114,"rank":1},{"id":4151,"rank":1},{"id":4222,"rank":3},{"id":4113,"rank":4},{"id":4122,"rank":3},{"id":4224,"rank":1},{"id":4111,"rank":1},{"id":4134,"rank":2},{"id":4132,"rank":1},{"id":4142,"rank":3}]},{"id":7208622,"name":"ShyvannaJungle","current":false,"masteries":[{"id":4212,"rank":2},{"id":4233,"rank":3},{"id":4242,"rank":1},{"id":4243,"rank":1},{"id":4214,"rank":2},{"id":4244,"rank":1},{"id":4234,"rank":3},{"id":4114,"rank":1},{"id":4222,"rank":3},{"id":4113,"rank":4},{"id":4253,"rank":1},{"id":4122,"rank":3},{"id":4224,"rank":1},{"id":4262,"rank":1},{"id":4231,"rank":1},{"id":4132,"rank":1},{"id":4232,"rank":1}]},{"id":7208623,"name":"Elize","current":true,"masteries":[{"id":4211,"rank":2},{"id":4214,"rank":2},{"id":4134,"rank":3},{"id":4213,"rank":2},{"id":4124,"rank":1},{"id":4154,"rank":1},{"id":4114,"rank":1},{"id":4113,"rank":4},{"id":4221,"rank":1},{"id":4152,"rank":3},{"id":4123,"rank":3},{"id":4224,"rank":1},{"id":4231,"rank":1},{"id":4133,"rank":1},{"id":4143,"rank":3},{"id":4162,"rank":1}]}]}}



-----------------------------------------------------------------------------

Script de Leitura


$data = json_decode($result, true);
curl_close($curl);
$champions = $data['3890687'];
foreach ( $champions as $e ) {
echo '<br>'.$champions.'-'.$e;
}


Abs e obrigado pela ajuda.
Vitor
Re: Leitura Json - Foreach
13 de May de 2014 às 03:01PM
Segue estrutra {"3890687": {
"pages": [
{
"masteries": [
{
"id": 4211,
"rank": 2
},
{
"id": 4121,
"rank": 1
},
{
"id": 4213,
"rank": 2
},
{
"id": 4124,
"rank": 1
},
{
"id": 4114,
"rank": 1
},
{
"id": 4222,
"rank": 3
},
{
"id": 4112,
"rank": 4
},
{
"id": 4221,
"rank": 1
},
{
"id": 4122,
"rank": 3
},
{
"id": 4152,
"rank": 3
},
{
"id": 4141,
"rank": 1
},
{
"id": 4111,
"rank": 1
},
{
"id": 4132,
"rank": 1
},
{
"id": 4142,
"rank": 3
},
{
"id": 4232,
"rank": 1
},
{
"id": 4162,
"rank": 1
},
{
"id": 4131,
"rank": 1
}
],
"id": 7208618,
"name": "ADHybrido",
"current": false
},
{
"masteries": [
{
"id": 4212,
"rank": 2
},
{
"id": 4211,
"rank": 2
},
{
"id": 4134,
"rank": 3
},
{
"id": 4222,
"rank": 3
},
{
"id": 4112,
"rank": 4
},
{
"id": 4221,
"rank": 1
},
{
"id": 4122,
"rank": 3
},
{
"id": 4152,
"rank": 3
},
{
"id": 4141,
"rank": 1
},
{
"id": 4111,
"rank": 1
},
{
"id": 4132,
"rank": 1
},
{
"id": 4142,
"rank": 3
},
{
"id": 4232,
"rank": 1
},
{
"id": 4162,
"rank": 1
},
{
"id": 4131,
"rank": 1
}
],
"id": 7208619,
"name": "AATROX",
"current": false
},
{
"masteries": [
{
"id": 4212,
"rank": 2
},
{
"id": 4353,
"rank": 3
},
{
"id": 4362,
"rank": 1
},
{
"id": 4213,
"rank": 2
},
{
"id": 4322,
"rank": 3
},
{
"id": 4334,
"rank": 1
},
{
"id": 4344,
"rank": 2
},
{
"id": 4214,
"rank": 1
},
{
"id": 4352,
"rank": 1
},
{
"id": 4323,
"rank": 1
},
{
"id": 4314,
"rank": 1
},
{
"id": 4331,
"rank": 3
},
{
"id": 4324,
"rank": 1
},
{
"id": 4312,
"rank": 3
},
{
"id": 4313,
"rank": 3
},
{
"id": 4342,
"rank": 1
},
{
"id": 4341,
"rank": 1
}
],
"id": 7208620,
"name": "Blitz",
"current": false
},
{
"masteries": [
{
"id": 4233,
"rank": 3
},
{
"id": 4121,
"rank": 1
},
{
"id": 4214,
"rank": 2
},
{
"id": 4213,
"rank": 2
},
{
"id": 4152,
"rank": 2
},
{
"id": 4114,
"rank": 1
},
{
"id": 4151,
"rank": 1
},
{
"id": 4222,
"rank": 3
},
{
"id": 4113,
"rank": 4
},
{
"id": 4122,
"rank": 3
},
{
"id": 4224,
"rank": 1
},
{
"id": 4111,
"rank": 1
},
{
"id": 4134,
"rank": 2
},
{
"id": 4132,
"rank": 1
},
{
"id": 4142,
"rank": 3
}
],
"id": 7208621,
"name": "Talentos-175114",
"current": false
},
{
"masteries": [
{
"id": 4212,
"rank": 2
},
{
"id": 4233,
"rank": 3
},
{
"id": 4242,
"rank": 1
},
{
"id": 4243,
"rank": 1
},
{
"id": 4214,
"rank": 2
},
{
"id": 4244,
"rank": 1
},
{
"id": 4234,
"rank": 3
},
{
"id": 4114,
"rank": 1
},
{
"id": 4222,
"rank": 3
},
{
"id": 4113,
"rank": 4
},
{
"id": 4253,
"rank": 1
},
{
"id": 4122,
"rank": 3
},
{
"id": 4224,
"rank": 1
},
{
"id": 4262,
"rank": 1
},
{
"id": 4231,
"rank": 1
},
{
"id": 4132,
"rank": 1
},
{
"id": 4232,
"rank": 1
}
]
Vitor
Re: Leitura Json - Foreach
13 de May de 2014 às 03:15PM
Pessoal Resolvi ..Valeu.
Luiz Aquino
Re: Leitura Json - Foreach
03 de June de 2014 às 01:08PM
Vitor veja se vc pode me ajudar?
Estou estudando PHP e antes eu fazia a gravação de dados em um formulário usando o metodo POST que carregava em uma página PHP. Procurei melhorar e aí comecei a estudar classes e das classes encontrei o jquery, consegui fazer o cadastro do formulário usando ajax, agora gostaria de fazer o seguinte. Ao sair (onblur) do input código ele vá na função localizar e me traga o nome da pessoa que corresponde ao código. Estou tentando fazer testes com array, mas já estou de cabeça quente, vc pode me ajudar?

Oque eu fiz de teste:

script
<script>
function Retorna(){
$(document).ready(function(){

var codigo=$("#Codigo").attr("value");
$.getJSON("dados.php",{id:codigo},function(json){
$("#Nome").val(json[0].nome);
});

});
};
</script>

formulário
<form name="form1" method="POST">
Codigo:<br>
<input id="Codigo" name="Codigo" type="text" onblur="Retorna();"><br>
Nome:<br>
<input id="Nome" name="Nome" type="text">
</form>

página dados.php
<?php
$array = Array();
$id = $_GET['id'];
if($id==1){
$array = Array("nome"=>"Luiz");
}
$json_encode = json_encode($array);
echo $json_encode;
?>
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.