Ciao
Ho dato un'occhiata alla galleria di immagini inclusa come modello in Flash e in effetti la variabile stringa: "hardcodeXML" viene ripulita dai tag html con un metodo che non conoscevo.
Non ho ancora capito bene cosa fa questo tuo codice PHP e comunque ottieni in Flash una stringa da un file di testo con la stessa formattazione usata nella variabile "hardcodeXML" della galleria in questione.
Se è così, dovresti caricare in Flash i dati contenuti nel file di testo e invece di valorizzare subito la variabile "hardcodeXML" come nel codice originale, la valorizzi con il contenuto importato dal file di testo.
Puoi formattare il file di testo in questo modo:
Codice PHP:
varTesto=<photos><image title='Test 1'>immagini/1.jpg</image><image title='Test 2'>immagini/2.jpg</image><image title='Test 3'>immagini/3.jpg</image><image title='Test 4'>immagini/4.jpg</image></photos>
Come vedi ha creato una variabile di nome varTesto che contiene la stringa che serve e che verrà poi "ripulita" in Flash.
Il codice originale della galleria và modificato così:
Codice PHP:
import fl.data.DataProvider;
import fl.events.ListEvent;
import fl.transitions.*;
import fl.controls.*;
// USER CONFIG SETTINGS =====
var secondsDelay:Number = 2;
var autoStart:Boolean = true;
var transitionOn:Boolean = true; // true, false
var transitionType:String = "Fade"; // Blinds, Fade, Fly, Iris, Photo, PixelDissolve, Rotate, Squeeze, Wipe, Zoom, Random
//var hardcodedXML:String="<photos><image title='Test 1'>immagini/1.jpg</image><image title='Test 2'>immagini/2.jpg</image><image title='Test 3'>immagini/3.jpg</image><image title='Test 4'>immagini/4.jpg</image></photos>";
// END USER CONFIG SETTINGS
var hardcodedXML:String
var richiesta:URLRequest = new URLRequest("immagini/filetesto.txt");
var caricaTesto:URLLoader = new URLLoader();
caricaTesto.dataFormat = URLLoaderDataFormat.VARIABLES;
caricaTesto.load(richiesta);
caricaTesto.addEventListener(Event.COMPLETE, caricamentoCompletato);
function caricamentoCompletato(evento:Event):void
{
hardcodedXML=caricaTesto.data.varTesto
imageList = XML(hardcodedXML);
fl_parseImageXML(imageList);
}
// DECLARE VARIABLES AND OBJECTS =====
var imageList:XML = new XML();
var currentImageID:Number = 0;
var imageDP: DataProvider = new DataProvider();
var slideshowTimer:Timer = new Timer((secondsDelay*1000), 0);
// END DECLARATIONS
// CODE FOR HARDCODED XML =====
//imageList = XML(hardcodedXML);
//fl_parseImageXML(imageList);
// END CODE FOR HARDCODED XML
// EVENTS =====
Come vedi c'è la dichiarazione di variabile "hardcodedXML" all'inizio ma è vuota e viene valorizzata nella funzione "caricamentoCompletato" con i dati contenuti nella variabile sul file di testo.
Poi ho dovuto spostare nella funzione quel "imageList" perchè nella posizione originale si generava un errore con il timer comunque così funziona e non servono altre modifiche al codice AS3.
ciao