wie kann ich auf XML Variablen zugreifen ?

Pullmann

Erfahrenes Mitglied
HI Leute habe ein Problem undzwar will ich ein Verzeichnis auslesen und die Dateien die
sich darin befinden an Flash übergeben ... das auslesen in PHP klappt aber das
weiterverarbeiten in Flash nicht so wirklich.
Hier mein Code
PHP
PHP:
<?
	$dir = opendir('sound');
	
	while ($datei = readdir($dir)) {
		if(($datei != ".") && ($datei != "..")){
 		
		header("Content-Type: text/xml");
		$output = "<menu_xml>";
		$output .= "<intem ";
		$output .=  "sound='$datei' ";
		$output .= "/>";
		$output .= "</menu_xml>";
	}	
	print "$output";			
	}
?>

Und hier der Code aus Flash
PHP:
sound_xml = new XML();
sound_xml.ignoreWhite = true;
sound_xml.onLoad = function() {
	test = sound_xml.sound;	
};
sound_xml.load("http://localhost/soundmodul/sound.php");

ts = 'sound/' + test;

Meine Probleme sind das ich noch nichtmal die Datei übergeben bekomme und mein 2tes
Problem ist das ich den Dateinamen an anderer Stelle nochmal verwenden muss und nicht auf die Variable zugreifen kann...

Kann mir einer Helfen ?
 
Hi,

poste doch mal, was sound_xml.toString() ausgibt. Soweit ich das sehen kann, wäre das in diesem Falle etwas wie:
PHP:
sound_xml.onLoad = function() {
    test = this.firstChild.firstChild.attributes.sound;    
};
(innerhalb der onLoad-Funktion bekommst Du eine Referenz auf das XML-Objekt übrigens mit "this" und nicht über den Bezeichner)

Gruß
.
 
HI

habe grad hinbekommen das ich die Variable innerhalb der Funktion ausgeben kann
undzwar so :

PHP:
sound_xml = new XML();
sound_xml.ignoreWhite = true;
sound_xml.onLoad = function() {
	n=sound_xml.firstChild.childNodes[0];
	test = n.attributes.sound;
};
sound_xml.load("http://localhost/soundmodul/sound.php");

ts = 'sound/' + test;

aber wie kann ich es jetzt so machen das ich die Variable unten bei ts nochmal verwenden kann ?

Kann ich nicht igrendwie nen return machen ?
 
... schreib das nicht einfach unter die load-Anweisung, sondern ebenfalls in die Funktion "onLoad". Mit der Variable kannst Du ja eh erst etwas anfangen, wenn das Objekte geladen wurde...

Gruß
.
 
Zurück