Estoy realizando una galeria y pido a traves de $.get() la informacion que corresponde a la imagen que siga.. el nombre, numero, el titulo y los comentarios que se hayan hecho en la misma, aqui es donde tengo el problema ya que cuando meto el array en un json desde php, al llegar a javascript no se como analizarlo..
Código PHP:
while($rowCom=mysql_fetch_assoc($resCom)){
$comentarios[]=array("name" => $rowCom['nombre'], "avt" => $rowCom['img_peq'], "prcma" => $rowCom['proclama'], "dt" => $rowCom['dt']);
}
$comentarios=json_encode($comentarios);
$data = array("comentarios" => "$comentarios", "nro" => "$nro", "name" => "$name", "desc" => "$desc");
echo json_encode($data);
{"comentarios":"[{\"name\":\"Esteban\",\"avt\":\"02.jpg\",\"prcma\" :\"Amigo\",\"dt\":\"hace 7 dias\"},{\"name\":\"Guille\",\"avt\":\"01.jpg\",\" prcma\":\"un amigo\",\"dt\":\"hace 6 dias\"}]","nro":"5","name":"5","desc":"Imagen 5"}
Es correcto lo que estoy haciendo?
Este es el code en jquery
Código:
Supongo que el problema esta en que javascript considera el campo comentarios:"[{\"name\":\"Esteban\",\"avt\":\"02.jpg\",\"prcma\" :\"Amigo\",\"dt\":\"hace 7 dias\"},{\"name\":\"Guille\",\"avt\":\"01.jpg\",\" prcma\":\"un amigo\",\"dt\":\"hace 6 dias\"}]" como un string y no como un array o yo analizo mal el dato.. el tema es que no se como hacer para que me lo analice como si fuera un array para sacar la cantidad de comentarios que hay y luego hacer otras cosas..$('a.sig').click( function () { $.get("php/galeria.php", datos, function(imgSig){ var siguiente = imgSig.name + '.jpg'; datos.img = imgSig.nro; $("img#gra").attr("src",siguiente); $("p#desc").html(imgSig.desc); //Ej.. si yo hago esto para sacar la cantidad de objetos del array que contiene el campo "comentarios" me tira la cantidad de letras que tiene.. var timeline = imgSig.timeline; alert(timeline.length); }, "json") } );
Se entiende? o la complique mucho? Espero que puedan darme una mano. gracias.