Weltkarte mit zugriff auf eine Textdatei

grex

Grünschnabel
Hallo,

folgendes hae ich vor:

Ich will eine Weltkarte erstellen auf der verschiedene Punkte sind.
Diese Punkte stellen verschiedene IP Adressen dar.

Die Punkte sollen rot und grün sein.

In der Textdatei steht folgendes:
ip01=ok (ip ist per ping erreichbar) -> grün
ip02=nok (ip ist per ping nicht erreichbar) -> rot

Wie kann ich nun den Wert der einzelnen IP´s auslesen und mit einer if Schleife festlegen welche Farbe der Punkt haben soll?


MfG

grex
 
Hi,

woher kommen denn deine Werte ?

Angenommen du machst es auf dem Standardweg, und hast ein php script welches eine Textdatei mit den Werten erstellt, das dann von Flash ausgelesen wird, nun gut, dann solltest du in deiner Datenstruktur von vorne herein eine Reihenfolge festlegen, meinetwegen Standorte 1 -. 10.
Die Textdatei füllt php dann wie folgt:
echo "&Standort1=$Standort1&Standort2=$Standort2&..."
die werte sind jeweils ok oder nok

in Flash machst du dann ein LoadVars Objekt, um deine Datei auszulesen, und auf die Bühne, die Weltkarte, setzt du Instanzen eines einzigen MC´s der gestoppt 2 Frames mit dem grünen und roten Zustand beinhaltet. Diesen ghibst du dann Instanznamen, bspw. Anzeige1, Anzeige2.....

Im LoadVarsObjekt baust du einen onLoad Handler ein, der ein Schleife enthält:
PHP:
LoadVarsObj.onLoad = function(){
for ( i=1, i==1; i++){
  TargetMC = eval("_root.Anzeige"+i);
   Zustand = eval("LoadVarsObj.Standort"+i);
        if ( Zustand == "ok"){
        TargetMC.gotoAndStop(1);
        TargetMC._visible = 1;
        }
        if (Zustand ==  "nok"){
         TargetMC.gotoAndStop(2);
        TargetMC._visible = 1;
        }
}

Der Code ist jetzt nur runter gewutscht, also testen, und bei Fragen fragen...
 
Hi,

erstmal danke für den Code.

Leider habe ich das nich richtig hinbekommen.

Ich habe bissher mit Flash noch nicht richtig gearbeitet und habe deswegen
nicht sehr viel Ahnung davon.

Gibt es eventuell die möglichkeit den Status der IP´s direkt mit Flash abzufragen.
Also mit Flash einen ping zu machen?
 
nope,

der ping müsste serverseitig ausgeführt werden, also über php oder cgi , jedenfalls hab ich da noch nix anderes gehört. Deine Problemstellung ist mir auch nicht ganz klar - willst du feststellen ob verschiedene Server Ip´s online sind und das mit rot und grün farblich darstellen oder um was geht es ? Wenn du die Möglichkeit hättest, auf diesen Servern etwas abzulegen liesse sich da etwas mit flash machen, aber kompliziert - den klassischen ping machst du lieber mit php, dabei brauchst du auch gar nicht den umweg über die textdatei nehmen, das ginge direkt - für mehr hilfe bräuchte ich aber schon mehr infos....

Grüsse
B

(hab erst heute nacht oder morgen mehr zeit)......
 
Ich überwache mit einem anderen Programm die Server.

Dieses zeit die Erreichbarkeit als html dateien an.
Kann aber leider keine Grafiken erstellen.

Deswegen möchte ich mit eine Weltkarte erstellen die mir mit den Rot/Grün Punkten anzeigt ob der Server erreichbar ist oder nicht.

So kann ich schnell feststellen welche Server nicht laufen.
Da viele über DSL angebunden sind muss ich so nicht nach den PLZ oder Telefonnummern suchen, um zu erfahren ob der Ausfall eventuell einen ganzen Landkreis betrifft.
 
ey wenn das programm html dateien erstellt, dann muss es ja auch textdateien erstellen können, check das aus, lad die choose mit dem LoadVars Objekt in Flash und machs wie oben beschrieben, wenn du das nicht schaffst, dann poste diene Dateien und den Output deines Programmes, und ich schaue morgen oder übermorgen mal danach....

B
 
Hi,

ich verzweifel, ich bekomme das nicht hin.

Der Text wird eingelesen und einwandfrei angezeigt.
Aber die Steuerung des Rot/Grün MovieClip bekomme ich nicht hin.

In der Zip Datei sind alle notwendigen Dateien enthalten.
Eventuell kann einer von euch mir hier weiterhelfen.

MfG

Grex
 

Anhänge

Hi,

entfern mal das Script auf dem MC:
node1_mc

und mach das mal auf den anderen:
PHP:
onClipEvent (load) {
	_root.node1_mc._visible = false;
	this.loadVariables("test.txt");
}
onClipEvent(data) {
	i = 0;
	while(eval("node"+i)) {
		_root.node1_mc.duplicateMovieClip("node1_mc"+i,i+1,{_x:(i*_root.node1_mc._width)});
		if (eval("node"+i) == "red"){
			_root["node1_mc"+i].gotoAndStop(1);
		} else if(eval("node"+i) == "green") {
			_root["node1_mc"+i].gotoAndStop(2);
		}
		i++;
	}
}

So müßte die PHP Ausgabe aussehen:
&node0=green&node1=green&node2=red&node3=green&
 
Zurück