Daten aus Textfeld mit split(",") verarbeiten

LupoTirol

Grünschnabel
Hallo Zusammen muss wieder einmal blöd fragen!

Bis jetzt habe ich meine Daten immer mit hilfe von PHP abgefragt und in einer TXT
"bilder.txt" gespeichert. Den Inhalt habe ich dann abgefragt und weiterverarbeitet.

PHP:
loadVariables ("bilder.txt", this);
this.onData = function ()
{
	alleBilder = new Array ();
	alleBilder = bildnamen.split (",");
	createEmptyMovieClip ("mc_bild", 1);
	setArray (0);
};

Nun hab ich es nach langen Probieren geschaft wieder mit PHP abzufragen und gleich
in einem Textfeld (id_ordner) auszugeben. Da steht es jetzt gleich wie in der TXT
(bildnamen=bilder_1.jpg,bilder_10.jpg,bilder_11.jpg,bilder_12.jpg,bilder_13.jpg,bilder_14.jpg)

Habe mein Script dafür so geändert:

PHP:
loadVariables (id_ordner, this);
this.onData = function ()
{
	alleBilder = new Array ();
	alleBilder = bildnamen.split (",");
	createEmptyMovieClip ("mc_bild", 1);
	setArray (0);
};

Funktioniert so leider nicht.
Was mache ich falsch.

Bitte - Danke.
Lupo
 
Hi,

in Deinem Code ist nichts auszumachen, was dafür sorgen könnte, dass der Inhalt des Arrays irgendwelchen Textfeldern zugewiesen wird.

Vielmehr findet sich dort eine Funktion "setArray" - was macht die?

Gruß
.
 
Hallo,

ich verstehe dein Antwort nicht!

Zwischen dem ersten und dem zweiten Code ist ja Grundlegend nur ein Unterschied.
Beim ersten Code frage ich die Daten aus "bilder.txt" ab und beim zweiten Code aus dem
Textfeld "id_ordner" welches eigendlich die gleichen Daten enthält wie die Textdate.

Die verarbeitung des Arrays ist bei beiden gleich.

Lupo
 
Hi,

ich verstehe wiederum Deinen Code nicht, da Du weder angegeben hast, auf welches Objekt sich "id_ordner" bezieht, noch wie die Funtion "setArray" implementiert ist.

Bitte hänge Deine komplette .fla an.

Gruß
.
 
Hi,

da es sich bei "id_ordner" um eine Textfeldvariable handelt, kannst Du daraus keine Daten mit der loadVariables-Aktion entnehmen (diese ist lediglich zum Laden externer Daten nötig).

Wenn Du den Inhalt des Textfeldes direkt verarbeiten willst, kannst Du auch direkt auf den Inhalt zugreifen:
Code:
alleBilder = new Array();
alleBilder = id_ordner.split(",");
createEmptyMovieClip("mc_bild", 1);
setArray(0);

Das sowohl der Einsatz der loadVariables-Aktion, als auch die Verwendung von Textfeldvariablen veraltet sind, möchte ich nur am Rande anmerken; verwende lieber das LoadVars-Objekt und Textfeld-Instanznamen (wobei Du auf den Inhalt mit der .text-Eigenschaft zugreifst).

Gruß
.
 
Guten Morgen und herzlichen Dank.

Eigentlich währe es logisch gewesen, aber halt nur eigentlich.

Habe jetzt leider noch immer ein kleines Problem.
Es erfolgt leider nach wie vor keine Ausgabe.

Was ist denn da der Grund.
Habe mir gedacht ich start den Aufbau erst nachdem die Abfrage und die Übergabe erfolgte.
mit "_global.userData.onLoad = function(success) "

Steh wieder einmal voll im Wald.


PHP:
_global.userData.onLoad = function(success) {
ordnerAusgabe = _global.id_link
// Spalten und Reihen
	pS = 4;
	pR = 5;
	// Limit
	max = pS*pR;
	// Zweidimensionales Array erzeugen
	function setArray(pT) {
		spielLevel = new Array();
		for (var m = 0; m<pR; m++) {
			spielLevel[m] = [];
			for (var n = 0; n<pS; n++) {
				spielLevel[m].push(alleBilder[pT++]);
			}
		}
		tabelle(153, 00, 58, 58);
	}
	// Movieclips setzen
	function tabelle(posX, posY, pB, pW) {
		for (i in this.mc_bild) {
			if (typeof (this.mc_bild[i]-1) == "movieclip") {
				this.mc_bild[i].removeMovieClip();
			}
		}
		tiefe = 0;
		for (var i = 0; i<spielLevel[0].length; i++) {
			for (var j = 0; j<spielLevel.length; j++) {
				nName = "block_"+i+"_"+j;
				this.mc_bild.attachMovie("contclip", nName, tiefe++);
				this.mc_bild[nName].nummer = i;
				this.mc_bild[nName].bildname = ordnerAusgabe+spielLevel[j][i];
				this.mc_bild[nName]._x = posX+pB*i*1.2;
				this.mc_bild[nName]._y = posY+pW*j*1.2;
				this.mc_bild[nName].onRelease = function() {
					this._parent._parent.createEmptyMovieClip("inhalt", 10000);
					this._parent._parent.inhalt.attachMovie("grosscontclip", "grossclip", 1);
					this._parent._parent.inhalt.grossclip.bildname = this.bildname;
					this._parent._parent.inhalt.grossclip._x = 480;
					this._parent._parent.inhalt.grossclip._y = 10;
					this._parent._parent.inhalt.grossclip.leiste_mc.onPress = function() {
						this._parent.startDrag();
					};
					this._parent._parent.inhalt.grossclip.leiste_mc.onRelease = this._parent._parent.inhalt.grossclip.leiste_mc.onReleaseOutside=function () {
						this._parent.stopDrag();
					};
					this._parent._parent.inhalt.grossclip.leiste_mc.onMouseMove = function() {
						updateAfterEvent();
					};
				};
			}
		}
	}
	// Schaltflächen
	w_btn.onRelease = function() {
		if (seite<alleBilder.length-max) {
			seite += max;
			setArray(seite);
		} else {
			this.w_btn._visible = true;
		}
	};
	z_btn.onRelease = function() {
		if (seite>0) {
			seite -= max;
			setArray(seite);
		} else {
			this.z_btn._visible = true;
		}
	}
};
// Starten
alleBilder = new Array();
alleBilder = _global.id_ordner.split(",");
createEmptyMovieClip("mc_bild", 1);
setArray(0);

Danke
Lupo
 
Hi,

nein, das kommt da bestimmt nicht hin. ;)

Prinzipiell (wenn das Textfeld zu Bedinn dieses Frames schon gefüllt ist), sollte die Zuweisung funktionieren. Setze doch mal ein
Code:
trace(alleBilder)
hinter die Zeile mit der split-Methode. Was wird ausgegeben?

Ich kann mir leider kein rechtes Bild davon machen, wie der Film ansich funktionieren soll, da mir zum Testen die benötigten Daten (Ausgabe des Servers usw.) fehlen.

Gruß
.
 
Hallo Tobias

danke für deine Geduld.

Komme einfach mit dem Ding nicht weiter.
Unter dem Link findest du den Versuch mit der Abfrage über PHP meiner Gallerie.
http://www.p23-pub.at/galerie/bwGalerie.swf

Unter diesem Link siehst du eine Galerie wo die Pfade fix vergeben sind. Die funktioniert auch.
http://www.p23-pub.at/galerie/bwGalerie2.swf


Die zwei Felder "id_link" und "id_ordner" werden mit angezeigt, damit man sieht was von
PHP übergeben wird. Das stimmt eigentlich schon, aber es werden einfach die Bilder nicht mehr angezeigt.

Bin am verzweifeln.

Bis dann und Danke
:-(
 
Zuletzt bearbeitet:
Zurück