Comunidad de diseño web y desarrollo en internet online

PHP, JSON y AS3 problem

Citar            
MensajeEscrito el 16 Ene 2013 05:30 pm
Estoy trabajando en un proyecto para recuperar los datos de Wuffo y ponerlos en una aplicación hecha en flash.
Mi archivo php tiene este código:
$examples = new WufooApiExamples('XXXX-XXXXX-IXXXX-XXXX', 'xxxxxxxxx', 'wufoo.com');
echo (json_encode($examples->getEntries(1)));

que me arroja este resultado en PHP:

{"1":{"EntryId":"1","Field1":"sfgsf","Field2":"gsfgsf","Field3":"gsfgsfg","Field6":"2013-01-16","Field8":"Michoac\u00e1n","Field9":"10","Field13":"sfgs","Field19":"1010","Field20":"rsdgdfg","Field22":"sgfsdfgs","Field25":"100212","Field28":"101010","Field29":"","Field31":"[email protected]","Field33":"asdfasdfasfd","Field135":"Masculino","Field34":"Casado(a)","Field138":"asdfasdf","Field139":"121321","Field140":"dsgfgsdfg","Field141":"424423","Field142":"sdfsdf","Field143":"101010","Field146":"asdfasdf","Field147":"102120","Field148":"asdfasdfasf","Field153":"","Field154":"","Field155":"","Field156":"","DateCreated":"2013-01-10 18:10:04","CreatedBy":"public","DateUpdated":"","UpdatedBy":null},"2":{"EntryId":"2","Field1":"iui","Field2":"tuyitui","Field3":"tyuityui","Field6":"2013-01-08","Field8":"Baja California Sur","Field9":"10","Field13":"4567456","Field19":"20","Field20":"dfgsdfgs","Field22":"sdfgdf","Field25":"31313","Field28":"63465464646","Field29":"453456346","Field31":"[email protected]","Field33":"fada634654asdf","Field135":"Masculino","Field34":"Casado(a)","Field138":"sdfasdfas","Field139":"434343","Field140":"ghdfghdgh","Field141":"75453","Field142":"fgsfdgdfg","Field143":"74546","Field146":"aadfa","Field147":"4646","Field148":"fasdf","Field153":"adfadf","Field154":"54","Field155":"4646","Field156":"4646456","DateCreated":"2013-01-11 16:10:44","CreatedBy":"public","DateUpdated":"2013-01-11 16:10:52","UpdatedBy":"public"}}

En flash tengo este código:

import flash.net.URLRequest;
import flash.net.URLVariables;
import flash.net.sendToURL;
import com.adobe.serialization.json.JSON;

var url:String = "http://www.xxxxxxxxxxxxxxx.com.mx/Wufoo/xxxxxx.php";

// por ahora no estoy enviando nada
var enviar:URLRequest = new URLRequest(url);
var recibir:URLLoader = new URLLoader();

enviar.method = URLRequestMethod.POST;

enviar.data = variables;

recibir.dataFormat = URLLoaderDataFormat.TEXT;

recibir.addEventListener(Event.COMPLETE,Respuesta) ;
recibir.addEventListener(IOErrorEvent.IO_ERROR,hayError);

recibir.load(enviar);

function Respuesta(event:Event){

var datos:Object = new Object();
datos = JSON.parse(JSON.stringify((event.target.data)));
trace(datos);

/* Me arroja este resultado {
"1":{"EntryId":"1","Field1":"sfgsf","Field2":"gsfgsf","Field3":"gsfgsfg","Field6":"2013-01-16","Field8":"Michoac\u00e1n","Field9":"10","Field13":"sfgs","Field19":"1010","Field20":"rsdgdfg","Field22":"sgfsdfgs","Field25":"100212","Field28":"101010","Field29":"","Field31":"[email protected]","Field33":"asdfasdfasfd","Field135":"Masculino","Field34":"Casado(a)","Field138":"asdfasdf","Field139":"121321","Field140":"dsgfgsdfg","Field141":"424423","Field142":"sdfsdf","Field143":"101010","Field146":"asdfasdf","Field147":"102120","Field148":"asdfasdfasf","Field153":"","Field154":"","Field155":"","Field156":"","DateCreated":"2013-01-10 18:10:04","CreatedBy":"public","DateUpdated":"","UpdatedBy":null},
"2":{"EntryId":"2","Field1":"iui","Field2":"tuyitui","Field3":"tyuityui","Field6":"2013-01-08","Field8":"Baja California Sur","Field9":"10","Field13":"4567456","Field19":"20","Field20":"dfgsdfgs","Field22":"sdfgdf","Field25":"31313","Field28":"63465464646","Field29":"453456346","Field31":"[email protected]","Field33":"fada634654asdf","Field135":"Masculino","Field34":"Casado(a)","Field138":"sdfasdfas","Field139":"434343","Field140":"ghdfghdgh","Field141":"75453","Field142":"fgsfdgdfg","Field143":"74546","Field146":"aadfa","Field147":"4646","Field148":"fasdf","Field153":"adfadf","Field154":"54","Field155":"4646","Field156":"4646456","DateCreated":"2013-01-11 16:10:44","CreatedBy":"public","DateUpdated":"2013-01-11 16:10:52","UpdatedBy":"public"}
}*/

Es decir tengo una respuesta tal cual en el php

Pero cuando intento sacar un datos específico no me sale nada en el trace:

var recibir:URLLoader = URLLoader(event.target);
var dat:Object = recibir.data as Object;
for (var interac:String in dat){
trace(dat[interac].EntryId);

}


}

function hayError(event:IOErrorEvent):void {
trace("Error al cargar la url");
}

Alguien tendrá alguna idea? :(

Por Tercio

3 de clabLevel



 

chrome
Citar            
MensajeEscrito el 16 Ene 2013 05:55 pm
Apenas publiqué esto lo solucioné. Y sin la libraria JSON. Sustituir :
var recibir:URLLoader = URLLoader(event.target);
var dat:Object = recibir.data as Object;
for (var interac:String in dat){
trace(dat[interac].EntryId);

por:

var dat:Object = JSON.parse(recibir.data);
for (var key:String in dat){
trace(dat[key].EntryId);
}

Por Tercio

3 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.