mit LoadVars() gelaeene Variablen in ActionScript weiterverwenden - hier Schleifen

tom_stuttgart

Grünschnabel
Hallo zusammen,

ich habe ein Projekt für nen Kunden von mir.
Dabei erstelle ich dynamisch für eine Produktübersicht die Produkte einzeln in einer Auflistung, die der Besucher dann einzeln anklicken kann um genauere Informationen zu bekommen.
Das funktioniert auch alles perfekt, mein Problem ist nur, die Anzahl der Produkte auszulesen und dann so viele Produkte darzustellen.
Die Anzahl lese ich aus einer PHP Datei die über MYSQL auf die DB zugreift und nur "&anzahl=3" zurückgibt. Ich habe es nach langem stöbern hier im Forum hinbekommen, dass ich zumindest schonmal im Ausgabefenster die Variable ausgeben kann. Nur er geht nicht in die Schleife. Vielleicht hab ich ja ein Denkfehler oder sowas. Auf jeden fall mach ich an den paar Zeilen schon ein paar Stunden dran rum. *G*

Vielleicht könnt ihr mir helfen?

Hier die Zeilen:
PHP:
//Festlegen Grundkoordinaten Produkt
produkt_x = 115;
produkt_y = -20;

//Setzen von 1 in erstem Produkt
produkt_grafik_1.text_id.text = 1;

//Zähler auf 2 setzen um den ersten Datensatz nicht doppelt anzuzeigen
i = 2;

//Laden der Variablen (anzahl)
varobj = new LoadVars();
varobj.onLoad = function(success) 
{
    if (success) 
	{
		//Wenn die Variable geladen ist dann
		//Ausgabe in Fenster (anzahl)
		trace("Anzahl = "+this.anzahl);
		zaehler = this.anzahl;
		//Ausgabe in Fenster (zaehler)
		trace("Zähler = "+zaehler);
		while (zaehler>1) 
		{
			//Ausgabe in Fenster (zaehler)
			trace("Zähler in Schleife = "+zaehler);
			duplicateMovieClip(produkt_grafik_1, "neue_produkt_grafik", i);
			neue_produkt_grafik.text_id.text = i;
			setProperty("neue_produkt_grafik", _name, "produkt_grafik_"+i);
			setProperty("produkt_grafik_"+i, _y, produkt_y);
			setProperty("produkt_grafik_"+i, _x, produkt_x);	
			i++;
			zaehler--;
		}
    }
}
varobj.load("produkt.php");
Im Ausgabe Fenster erscheint dann folgendes:
Anzahl = 3
Zähler = 3

Vielen Dank im Voraus...
Gruß Tom
 
Re: mit LoadVars() gelaeene Variablen in ActionScript weiterverwenden - hier Schleife

Hi,

ich versteh zwar nicht genau, warum bei Dir der erste Datensatz doppelt angezeigt wird, wenn Du mit i unterhalb von 2 beginnst, aber zaehler dürfte nach dem Empfang ein String sein, der sich nicht mit -- dekrementieren lässt. Probiers mal so:
Code:
zaehler = parseInt(this.anzahl, 10);
        //Ausgabe in Fenster (zaehler)
        trace("Zähler = "+zaehler);
        while (zaehler>1) 
        {

Gruß
.
 
Re: mit LoadVars() gelaeene Variablen in ActionScript weiterverwenden - hier Schleife

Danke Datic,

das ist glaub ich genau das was ich gesucht habe...
Hatte inzwischen auch herausgefunden, dass er den Wert wohl als String nimmt und hab es aber nicht hinbekommen ihn in eine Number umzudeklarieren.
Ich denk das bekomm ich so hin, danke.

Wegen dem I als Zähler:
Den setze ich auf 2, da ja das erste Produkt schon da ist.
Dieses wird dann dupliziert und soll dann ja das 2. Produkt sein.
Da ich den Wert des Textfeldes neue_produkt_grafik.text_id.text dafür nutze um eine neue Abfrage nach den Daten im Produkt selbst zu starten.
Jetzt verstanden? *G*
 
Re: mit LoadVars() gelaeene Variablen in ActionScript weiterverwenden - hier Schleife

Kleiner Tipp: Das ist einer der Gründe, warum man lieber mit attachMovie statt duplicateMovieClip arbeiten sollte: Man kann von 0 bis beliebig viele Objekte erstellen, kann das Ziel frei definieren und ist nicht an die Eigenschaften einer existierenden Instanz gebunden.

Gruß
.
 
Zurück