How do I call variables into Flash by removing existing XML calls?

We have a flash audio player that currently uses an XML file to bring in data (audio path, image location, title) for the audio file.  Rather than having one XML file for each audio file (we have a lot), I'd like to pull the details of each audio file (by PHP) through the URL string.


With PHP I can pull the following variables into the actionscript, but I dont know what elements of the XML to replace?

var projectaudio:String;
var projecttitle:String;
var projectimage:String;

Below is the current actionscript and XML:



Here is the current actionscript:
 
_root.playlist == undefined ? playlist = "mp3player.xml" : playlist=_root.playlist;
 
// stage variables
Stage.showMenu = false;
Stage.scaleMode = "noScale";
stop();
 
// player variables
volume = 100;
current_audio = 1;
top.equalizer._visible=0;
 
// playlist loading
data_xml = new XML();
data_xml.ignoreWhite = true;
data_xml.onLoad = loadData;
data_xml.load(playlist);
 
 
// parsing all xml data into flash
function loadData(success) {
	if (success) {
		imgloc = this.firstChild.attributes.imgloc;
		// showdisplay and playlist toggles
		if (this.firstChild.attributes.showTime != "yes"){
			top.timecomponent._visible = 0;
		}
		showDisplay = this.firstChild.attributes.showDisplay;
		if (showDisplay == "yes") {
			top.easeY(toppos);
			topup = false;
			display_btn._rotation+=180; }
		showPlaylist = this.firstChild.attributes.showPlaylist;
		if (showPlaylist == "yes") {
			bot.easeY(botpos);
			botup = false;
			list_btn._rotation+=180; }
		// getting all titles and filenames
		aPath = new Array();
		audioTitel = new Array();
		audioTracks = new Array();
		audioTracks.shuffle();
		audioTracks = this.firstChild.childNodes;
		audio_total = audioTracks.length;		
		for (var i = 0; i<audio_total; i++) {
			aPath.push(audioTracks[i].attributes.path);
			audioTitel.push(audioTracks[i].attributes.title);
			// buiding playlist buttons
			bot.playlist.btn.duplicateMovieClip("btn"+i, i);
			bot.playlist["btn"+i]._y = bot.playlist.btn._y+i*int(bot.playlist.btn._height) +i;
			bot.playlist["btn"+i].txt = checkDigits(i+1)+". "+audioTitel[i];
			bot.playlist["btn"+i].hit.onPress = function() {
				listClick(this._parent.getDepth()+1); }; 
		}
		//checking autostart mode
		autoStart = this.firstChild.attributes.autoStart;
		if (autoStart == "yes") {
			playaudio(); 
			play_btn._visible = 0;
		} else if (autoStart == "no") {
			play_btn._visible = 1;
			pause_btn._visible = 0;
		} else if (autoStart == "random") {
			current_audio = random(audio_total)+1;
			playaudio(); 
			play_btn._visible = 0;
		} else {
			current_audio = int(this.firstChild.attributes.autoStart);
			playaudio(); 
			play_btn._visible = 0; } }
	// done ! all loaded succesfully. purging trash
	//load company image
	loadMovie(imgloc,"container");
	//
	delete audioTracks;
	delete data_xml;}
 
 
 
Here is the XML file:
 
<?xml version="1.0" encoding="UTF-8"?>
<player showTime="no" autoStart="yes" imgloc="testing.jpg">
    <audio path="http://www.url.com/testing.mp3" title="Testing Audio" />
</player>
 
 
 
//////////////////////////////////////////////////////////////////////////

Open in new window

citegirlAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
steelseth12Connect With a Mentor Commented:
Why not have the php file generate the xml data. This way you have alot more flexibility then passing the variables through the url

_root.playlist == undefined ? playlist = "mp3player.php" : playlist=_root.playlist;
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.