hi there, i've tried to edit this code for a few days and it just wont work!
Its supposed to create the new movie clip, then load in the image from the php results

the php works fine and read the mysql perfectly! I think i'm just not calling the variable properly in the loop?

the php gives lots of info...

echo "&id" . $i . "=" . $cat["id"];
echo "&name" . $i . "=" . $cat["name"];
echo "&url1" . $i . "=" . $cat["url1"];
echo "&url2" . $i . "=" . $cat["url2"];
echo "&price" . $i . "=" . $cat["price"];

Code:
// Import the transitions classes so you can add a fading effect when the images load to the Stage.
import mx.transitions.*;

// Set the starting X and Y positions for the gallery images.
_global.thisX = 30;
_global.thisY = 70;

/* Set static values for the Stage's width and height. 
   Using Stage.width and Stage.height within the code results in 
   strangely positioned full images when testing in the Flash environment 
   (but the problem doesn't exist when published to a SWF file). */
_global.stageWidth = 600;
_global.stageHeight = 400;


/* create a function which loops through the images in an array,
   and creates new movie clips on the Stage. */
   
   
function displayGallery(gallery_array:Array) {
	var galleryLength:Number = gallery_array.length;
	// loop through each of the images in the gallery_array.
	function loadPictures() 

{
	myPictures = new LoadVars()
	myPictures.load("getPictures.php") 
	myPictures.onLoad = function(success)
	{ 
		if(success)
		{ 
	
		for (var i = 0; i<galleryLength; i++) {
		/* create a movie clip instance which holds the image. We'll also set a variable, 
		   thisMC, which is an alias to the movie clip instance. */
		
		var thisMC:MovieClip = this.createEmptyMovieClip("image"+i+"_mc", i);
		
		/* load the current image source into the new movie clip instance, 
		   using the MovieClipLoader class. */
		mcLoader_mcl.loadClip(myPictures["picName" + i], thisMC);
		
		// attach the preloader symbol from the Library onto the Stage.
		preloaderMC = this.attachMovie("preloader_mc", "preloader"+i+"_mc", 5000+i);
		
		/* set the preloader's bar_mc's _xscale property to 0% 
		   and set a default value in the progress bars text field. */
		preloaderMC.bar_mc._xscale = 0;
		preloaderMC.progress_txt.text = "0%";
		
		// set the _x and _y coordinates of the new movie clip.
		thisMC._x = _global.thisX;
		thisMC._y = _global.thisY;
		
		// set the position of the image preloader.
		preloaderMC._x = _global.thisX;
		preloaderMC._y = _global.thisY+20;
		
		// if you've displayed 5 columns of images, start a new row.
		if ((i+1)%5 == 0) {
			// reset the X and Y positions
			_global.thisX = 20;
			_global.thisY += 80;
		} else {
			_global.thisX += 80+20;
		}
	}
}

// define the MovieClipLoader instance and MovieClipLoader listener Object.
var mcLoader_mcl:MovieClipLoader = new MovieClipLoader();
var mclListener:Object = new Object();
mclListener.onLoadStart = function() {
};

// while the content is preloading, modify the width of the progress bar.
mclListener.onLoadProgress = function(target_mc, loadedBytes, totalBytes) {
	var pctLoaded:Number = Math.round(loadedBytes/totalBytes*100);
	// create a shortcut for the path to the preloader movie clip.
	var preloaderMC = target_mc._parent["preloader"+target_mc.getDepth()+"_mc"];
	preloaderMC.bar_mc._xscale = pctLoaded;
	preloaderMC.progress_txt.text = pctLoaded+"%";
};

// when the onLoadInit event is thrown, you're free to position the instances 
mclListener.onLoadInit = function(evt:MovieClip) {
	evt._parent["preloader"+evt.getDepth()+"_mc"].removeMovieClip();
	/* set local variables for the target movie clip's width and height,
	   and the desired settings for the image stroke and border. */
	var thisWidth:Number = evt._width;
	var thisHeight:Number = evt._height;
	var borderWidth:Number = 2;
	var marginWidth:Number = 8;
	evt.scale = 20;
	// draw a white rectangle with a black stroke around the images.
	evt.lineStyle(borderWidth, 0x000000, 100);
	evt.beginFill(0xFFFFFF, 100);
	evt.moveTo(-borderWidth-marginWidth, -borderWidth-marginWidth);
	evt.lineTo(thisWidth+borderWidth+marginWidth, -borderWidth-marginWidth);
	evt.lineTo(thisWidth+borderWidth+marginWidth, thisHeight+borderWidth+marginWidth);
	evt.lineTo(-borderWidth-marginWidth, thisHeight+borderWidth+marginWidth);
	evt.lineTo(-borderWidth-marginWidth, -borderWidth-marginWidth);
	evt.endFill();
	

};
loadPictures();
stop();