Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 25-07-2003, 00:16   #1 (permalink)
Big Apple süchtig
 
Registriert seit: Feb 2002
Ort: Worms , nähe Mannheim
Beiträge: 358
Array Auswertung

Hi

ich muss zu allererst sagen, dass Arrays für mich ein neues Gebiet sind, irgendwie hab ich nie was davon erfahren .

Ich hab also in php folgenden Array:

PHP-Code:
<?php

$flug
[1][Frankfurt][München][B747];
$flug[2][Berlin][Bremen][B777];
$flug[3][New York][Hong Kong][A310];
$flug[4][Los Angeles][Oslo][A330];
?>
Jetzt möchte ich diese "Tabelle" in FLash anzeigen lassen. Und zwar habe ich das so gemacht, das jede Zelle ihr eigenes Dynamisches Textfeld hat.
Die Tabelle besteht also aus 4x4 Zellen ( 4x4 textfeldern)

Einladen tu ich ja mit
ActionScript:
  1. loadVariables ("test.php","")

Hätte ich jetzt statt des Arrays Variablen, könnte ich ja einfach beim Dynmaischen textfeld zB die Variable "_root.flug1" angeben. Aber wie mache ich das jetzt mit dem Array, Oder muss ich aus dem Array erst ne Variable machen damit ích den Inhalt in ein Textfeld laden kann ?

PS: Selbst wenn ich das nicht machen muss, wie mache ich ausm Array wieder ne Variable ?

Mfg Fabian
Develop ist offline   Mit Zitat antworten
Alt 25-07-2003, 08:33   #2 (permalink)
[Ernst Reiter]
 
Benutzerbild von Scrawer
 
Registriert seit: Jul 2001
Ort: austria
Beiträge: 3.691
also mal langsam.... arbeitest du in php mit mehrdimensionale Arrays?

in deinem falle würde ich auf die schnelle sagen

$flug[1] = "Frankfurt, München, B747";
$flug[2] = "Berlin, Bremen, B777";

dann könntest in php per vorschleife einfach einen string zusammensetzen für flash....

str += $flug[i]."|";

am ende machst dann echo "fstring=".str;

dann müsstest in flash nach dem laden nur noch den string wieder ein array zerlegen... und die daten selber in ein unter Array
ActionScript:
  1. arrFluege = fstring.split("|");
  2. for (var i=0; i<arrFluege.length; i++)
  3. {
  4. arrFluege[i] = arrFluege[i].split(",");
  5. }
nun hättest in flash folgende struktur


arrFluege[0]
- [0] Frankfurt
- [1] München
- [2] B747
arrFluege[1]
- [0] Berlin
- [1] Bremen
- [2] B777

usw......

jetzt könntest wiederrum in einer schleife deine textfelder befüllen...
mit z.b arrFluege[0][0] kommst an den wert Frankfurt ran usw....

so, das sollte die weiterbringen das ganze

p.s. du solltest mit loadVars arbeiten nicht mit loadVariabels... wegen der ladekontrolle....
__________________
Das Gesetz des Lebens liegt im Notwendigen. Der Reiz des Lebens liegt im Überflüssigen
m.f.g Scrawer (www.thinkspace.at)
Scrawer ist offline   Mit Zitat antworten
Alt 25-07-2003, 17:24   #3 (permalink)
Big Apple süchtig
 
Registriert seit: Feb 2002
Ort: Worms , nähe Mannheim
Beiträge: 358
ich versuchs mal
Develop ist offline   Mit Zitat antworten
Alt 26-07-2003, 16:45   #4 (permalink)
Big Apple süchtig
 
Registriert seit: Feb 2002
Ort: Worms , nähe Mannheim
Beiträge: 358
ich hab mal zum test folgendes gemacht :

meine test.php:
PHP-Code:
<?php
$test
[0][0]="hallo";
$test[0][1]="Welt";
$test[1][0]="willkommen";
print 
"&test[0][0]=$test[0][0]";
print 
"&test[0][0]=$test[0][1]";
print 
"&test[0][0]=$test[1][0]";

?>
Jetzt hab in in einem textfeld die Var "test[0][0]" angegeben. Doch es wurde folgendes angezeigt "array[0]", es müsste doch so funktionieren. ?(
Develop ist offline   Mit Zitat antworten
Alt 26-07-2003, 19:54   #5 (permalink)
[Ernst Reiter]
 
Benutzerbild von Scrawer
 
Registriert seit: Jul 2001
Ort: austria
Beiträge: 3.691
also die erste frage die sich mir stellt ist.. warum arbeitest in php mit mehrdimensionale Arrays?
kommen die Daten aus der Datenbank oder wie....

du solltest mal schaun das du die daten so aus dem php rausbekommst:

&str=Frankfurt,München,B747|Berlin,Bremen,B777&

also das zeichen '|' trennt mal einen flug und das zeichen ',' die flug daten eines fluges in sich

wie du nun am besten den string zusammensetzt.. kann ich nun nicht sagen... da ich eben nicht
weis woher php die daten bekommt und in welcher form.. aber eine for schleife wirt mal sicher
dabei sein

in flash könnte es dann so weiter gehen

ActionScript:
  1. content = new LoadVars();
  2. content.load("dein.php");
  3. content.onLoad = function(success)
  4. {
  5.      if (success)
  6.      {
  7.          _root.arrFlug = this.str.split('|');
  8.          
  9.          for (var i=0; i<arrFlug.length; i++)
  10.          {
  11.           _root.arrFlug[i] = _root.arrFlug[i].split(',');
  12.         }
  13.     }
  14. }

nun hättest eben auf _root... das array flug in der struktur
wie ich schon in meinem ersten posting sagte

arrFlug[0]
- [0] Frankfurt
- [1] München
- [2] B747
arrFluege[1]
- [0] Berlin
- [1] Bremen
- [2] B777

wenn du mir erklärst was in php passiert.. bzw.. woher er die daten wie kommen... kann ich dir wenn nötig dort auch helfen.. aber so
sollte es laufen... ist aber nicht getestet
__________________
Das Gesetz des Lebens liegt im Notwendigen. Der Reiz des Lebens liegt im Überflüssigen
m.f.g Scrawer (www.thinkspace.at)
Scrawer ist offline   Mit Zitat antworten
Alt 26-07-2003, 20:18   #6 (permalink)
Big Apple süchtig
 
Registriert seit: Feb 2002
Ort: Worms , nähe Mannheim
Beiträge: 358
ok vielen Dank. Die Daten kommen aus einer mysql Datenbank, wobei jeder Wert eine Spalte und jedes Array eine Zeile ist. Den php Code erstellt jemand anders, ich soll das ganze dann in Flash überragen.
Develop ist offline   Mit Zitat antworten
Alt 28-07-2003, 12:09   #7 (permalink)
Big Apple süchtig
 
Registriert seit: Feb 2002
Ort: Worms , nähe Mannheim
Beiträge: 358
ich hab jetzt alles genau so gemacht, doch die Textfelder zeigen immer noch nix an. Was genau ist eigentlich diese Function (success) ?
Develop ist offline   Mit Zitat antworten
Alt 28-07-2003, 17:46   #8 (permalink)
[Ernst Reiter]
 
Benutzerbild von Scrawer
 
Registriert seit: Jul 2001
Ort: austria
Beiträge: 3.691
geht sicher... hier ein bsp.. mit befüllen und erstellen der nötigen textfelder

mach dir ein test file namens 'daten.php' mit dem inhalt:
&str=Frankfurt,Muenchen,B747|Berlin,Bremen,B777 &
ActionScript:
  1. content = new LoadVars();
  2. content.load("daten.php");
  3. content.onLoad = function(success)
  4. {
  5.     if (success)
  6.     {
  7.         _root.arrFlug = this.str.split('|');
  8.         for (var i = 0; i<arrFlug.length; i++)
  9.         {
  10.             _root.arrFlug[i] = _root.arrFlug[i].split(',');
  11.         }
  12.        
  13.         var arrBezeichner = ["von: ", "nach: ", "FlugNr.: "];
  14.         for (var i = 0; i<arrFlug.length; i++)
  15.         {
  16.             _root.createTextField('flugBez'+i, i+100, 0, i*60, 50, 60);
  17.             _root.createTextField('flugDaten'+i, i, 50, i*60, 100, 60);
  18.             for (var s = 0; s<arrFlug[i].length; s++)
  19.             {
  20.                 _root['flugBez'+i].text += arrBezeichner[s]+newline;
  21.                 _root['flugDaten'+i].text += arrFlug[i][s]+newline;
  22.             }
  23.         }
  24.     }
  25. };
Angehängte Dateien
Dateityp: zip flug_daten.zip (2,9 KB, 12x aufgerufen)
__________________
Das Gesetz des Lebens liegt im Notwendigen. Der Reiz des Lebens liegt im Überflüssigen
m.f.g Scrawer (www.thinkspace.at)
Scrawer 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:28 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele