Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 02-02-2004, 07:29   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
Array aufteilen

Hi,

irgendwie raff ich es heut nicht.

Bekomme von PHP zB. diesen String:

name#vorname#ort#name#vorname#ort usw.

Mit :

myArray = myString.split ("#");

habe ich nun ein schönes langes Array.

Mit :

anzahl = (mystring.length-1)/3;

Ermittle ich die Anzahl der Datensätze

Nun wollte ich es so haben, das "name","vorname" und "ort" in
drei createTextfield hineinkommen, dann den _y wert versetzen
und die nächsten drei Textfelder usw.

Jemand eine Idee ?
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Alt 02-02-2004, 10:56   #2 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
Erst mal: es muss so heißen: anzahl = (mystring.length)/3; Test doch mal sonst bekommst du bei Einem Array vom 9 Einträgen 2.666... ausgespuckt!
johanness ist offline   Mit Zitat antworten
Alt 02-02-2004, 11:05   #3 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
So das sollte dir weiter helfen:
ActionScript:
  1. adr = new Arra();
  2. adr = ["Name1", "Vorname1", "Ort1", "Name2", "Vorname2", "Ort2", "Name3", "Vorname3", "Ort3"];
  3.  
  4. anzahl = adr.length / 3;
  5. trace(adr.length);
  6. trace(anzahl);
  7. trace("=======");
  8.  
  9. for(var i=1; i<=anzahl; i+=1) {
  10.     j = i*3;
  11.     trace(j);
  12.     trace("Name" + i + ": " + adr[j-2]);
  13.     trace("Vorname" + i + ": " + adr[j-1]);
  14.     trace("Ort" + i + ": " + adr[j]);   
  15. }

Den Array richtig aufteilen und einlesen bekommst du ja ihn oder?
johanness ist offline   Mit Zitat antworten
Alt 02-02-2004, 11:10   #4 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
Nee, Danke für den Tipp aber:

PHP übergibt ja an der letzen Position auch ein "#" mit.

Ergo:

ActionScript:
  1. var string = "name#vorname#ort#name#vorname#ort#";
  2. newstring = string.split("#");
  3. anzahl = (newstring.length-1)/3;
  4. trace(anzahl);
  5.  
  6. // Ausgabe = 2 !
  7.  
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Alt 02-02-2004, 11:11   #5 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
Ok, das wirst du schaffen oder?
War mein Ansatz das, was du suchst?
johanness ist offline   Mit Zitat antworten
Alt 02-02-2004, 14:13   #6 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
hi johanness,

Danke für Deine Mühe. Habe es getestet und geht !!

War aber auch nicht faul und habe diese Variante:
Die erzeugt dann auch gleich die Textfelder

ActionScript:
  1. var mystring = foo.split ("#");
  2.     anzahl = (mystring.length - 1) / 6;
  3.     for (i = 0; i < anzahl; i++) {
  4.         zahl++;
  5.         _root["meinArray" + i] = mystring.slice (0, 6);
  6.         mystring.splice (0, 6);
  7.         for (k = 0; k < 6; k++) {
  8.             zahl++;
  9.             var link = _root["meinArray" + i][3];
  10.             switch (k) {
  11.             case 1 :
  12.                 //datei_beschreibung
  13.                 ausgabe ("<a href=\"asfunction:MeineFunktion," + _root["meinArray" + i][3] + "#" + _root["meinArray" + i][0] + "\">" + _root["meinArray" + i][k] + "</a>", zahl, k, i, 200);
  14.                 break;
  15.             case 4 :
  16.                 //datei_zugriffe
  17.                 ausgabe (_root["meinArray" + i][k], zahl, k - 1, i, 50);
  18.                 break;
  19.             case 5 :
  20.                 //datei_groesse
  21.                 ausgabe (_root["meinArray" + i][k], zahl, k - 1.5, i, 50);
  22.                 break;
  23.             }
  24.         }
  25.     }
  26. }
  27. function ausgabe (txt, tiefe, xpos, ypos, breite) {
  28.     meinFormat = new TextFormat ();
  29.     meinFormat.font = "hooge";
  30.     meinFormat.color = 0x303CC9;
  31.     meinFormat.align = "center";
  32.     meinFormat.underline = false;
  33.     _root.createTextField ("meinText" + tiefe, tiefe, xpos * 100 - 100, ypos * 50 + 100, breite, 100);
  34.     meinText = eval ("meinText" + tiefe);
  35.     meinText.embedFonts = true;
  36.     meinText.multiline = true;
  37.     meinText.wordWrap = true;
  38.     meinText.border = true;
  39.     meinText.type = "dynamic";
  40.     meinText.html = true;
  41.     meinText.htmlText = txt;
  42.     meinText.setTextFormat (meinFormat);
  43. }
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Alt 02-02-2004, 14:21   #7 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
Thumbs up


Gleich alles machen war nicht gefragt Wollte lediglich draufhinweisen, dass man sich die Daten so aus dem Array holen kann *g*
johanness ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 10:17 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele