Solved

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

Posted on 2007-11-19
1
206 Views
Last Modified: 2008-02-07
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

0
Comment
Question by:citegirl
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
 
LVL 20

Accepted Solution

by:
steelseth12 earned 500 total points
ID: 20314723
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

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
How to extract database info from current month and year 7 34
ASP AND XML 3 30
scan php uploads for viruses 5 25
XSL for-each loop - Excluding specific text 4 15
Build an array called $myWeek which will hold the array elements Today, Yesterday and then builds up the rest of the week by the name of the day going back 1 week.   (CODE) (CODE) Then you just need to pass your date to the function. If i…
I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
In this tutorial viewers will learn how to create a basic shape tween animation in Flash including shape hints for smooth animation Open a new document in Flash: Draw a shape: Select another frame (how long you want the tween to be): Right click and…

749 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question