J'ai une classe qui charge des données xml via script PHP. J'essaie de saisir le format XML (que j'ai vérifié est formaté correctement), et le bourrer dans un certain nombre de variables. J'essaie:as3: xml charge mais ne semble pas être forcé à natif flash xml
package utils.php
{
import flash.events.Event;
import flash.events.EventDispatcher;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.net.URLRequestMethod;
public class DirectoryReader extends EventDispatcher
{
public var fileList:XMLList;
public var totalBytes:int;
private var loader:URLLoader;
public function DirectoryReader(url:String)
{
var urlreq:URLRequest = new URLRequest(url);
trace(url);
urlreq.contentType = "text/xml";
urlreq.method = URLRequestMethod.POST;
loader = new URLLoader(urlreq);
loader.addEventListener(Event.COMPLETE, completeHandler);
loader.load(urlreq);
}
protected function completeHandler(e:Event):void
{
trace("seems to have worked...");
var loaded:XML = loader.data;
fileList = loaded.child("filelist").attribute("file");
trace("file list: " + fileList);
totalBytes = loaded.child("totalsize");
trace("total size: " + totalBytes);
dispatchEvent(new Event("directoryLoaded"));
}
}
}
Ai-je fait quelque chose d'évident qui ne va pas? Fondamentalement, j'obtiens une erreur que la variable chargée ne peut pas être propagée correctement comme s'il y a une incompatibilité de type. FWIW, ma classe étend EventDispatcher afin que je puisse notifier les autres classes qu'elle a chargées. J'envoie une URL, y compris les variables php ala? et &.
Merci, JML
Pouvez-vous fournir plus de code comment utiliser votre classe ... – Patrick
vous oui, je l'ai mis à jour le code. – jml
En tant que pointe non liée, ceci: loaded.child ("filelist"). Attribute ("file"); est la même que celle-ci: loaded.filelist. @ File ;) – Cay