XML von externer URL einbinden

m4mu5chk4

Grünschnabel
Hallo,

ich hab mich heute mal an Flash gemacht zum ersten mal und dazu eine Vorlage benutzt und editiert..
hab also nich wirklich die Ahnung von Flash :/

zu meiner Frage:

ich binde eine XML Datei ein um Bilder rauszulesen:

PHP:
// --> XML-Objekt erzeugen (Bezeichner: mein_xml)
mein_xml = new XML();
// --> Störende Leerzeichen ignorieren
mein_xml.ignoreWhite = true;
//  -->XML-Datei einlesen
mein_xml.load("bilddaten.xml");
// --> wenn XML geladen …
mein_xml.onLoad = function(status) {
	if (status && this.loaded) {
		geladen = true;
		// --> verarbeite folgende Funktion
		ladeBild();
	}
};

das funktioniert lokal sowie online, die bilder werden direkt aus dem Internet gezogen..
jetzt möchte ich auch die XML direkt von einem Server öffnen um die Flash datei später auf jeder beliebigen Homepage einbinden zu können.

also:
PHP:
// --> XML-Objekt erzeugen (Bezeichner: mein_xml)
mein_xml = new XML();
// --> Störende Leerzeichen ignorieren
mein_xml.ignoreWhite = true;
//  -->XML-Datei einlesen
mein_xml.load("http://www.domain.de/ordner/bilddaten.xml");
// --> wenn XML geladen …
mein_xml.onLoad = function(status) {
	if (status && this.loaded) {
		geladen = true;
		// --> verarbeite folgende Funktion
		ladeBild();
	}
};

das ganze funktioniert jetzt allerdings nur noch direkt im Adope Flash Programm.
Wenn ich die Datei lokal öffne kommt ne sicherheitsmeldung und im Browser passiert nichts weiter also es wird nichts mehr angezeigt.

Warum funktioniert es jetz nur noch im Editor muss ich noch was beachten um die XML extertn einzufügen?

bitte um Hilfe! danke
 
Hi,

versuche doch mal das XML per URLRequest zu laden:

Code:
import flash.net.URLRequest;
import flash.display.Loader;

var xml:XML = null;

function loadXML(url:String):void {
  var req:URLRequest = new URLRequest(url);
  var _loader:Loader = new Loader();
  _loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);  
  _loader.load(req);
}

function onComplete(e:Event) {
  xml = new XML(e.target.loader.data);
}

loadXML("http://domain.de/filename.xml");

Der Code ist allerdings nur für ActionScript 3, wie das mit AS2 geht weiss ich leider nimmer *g*

LG
Andy
 
hey,

danke für den ansatz ;)

habs jetzt mit dem von mir geposteten code doch hinbekommen lag noch an en paar einstellungen beim export -.- vdmt 0o
 
Zurück