[MX] Variablen Problem beim Laden in externe swf's

Comander_Keen

Erfahrenes Mitglied
Hallo zusammen!

Ich arbeite gerade an einer kompletten Seite in Flash. Das importieren von externen Swf's stellt nicht das Problem dar, sondern mehr der Content. Dieser kommt bei mir eigentlich über PHP aus MySQL.

Leider funktioniert dies nur, wenn ich die externen Clips einzeln starte. Da ich diese aber in einen Hauptfilm laden will .. ist atm unschön. Ich persönlich tippe auf das level bei loadVariablesNum. Habe das Problem aber leider noch nicht lösen können.

Hier nun ein paar Codeschnippsel..

PHP:
/*laden des Testtextes (in den geladenen MC)*/
loadVariablesNum("news.php", 0, "POST");
stop();

/*Laden Externen MC's (für den Hauptteil) .. was eigentlich nicht zu meinem Problem gehört*/
function load_mc(name){
	loadmovie(name + ".swf" , _root.mc_main);
}

Wie schon gesagt. Ich greife nur in reingeladenen Filmen auf *.php zurück.
 
Hi,
loadVariablesNum ist der falsche Befehl in Zusammenhang mit dem Laden eines Movies in einen COntainer auf der Bühne - Level0 ist nunmal _root, was bedeutet das deine Variablen sich alle auf _root befinden - wenn du deinen externen Movie alleine startest ist das kein Problem, da er ja _root darstellt, als zugeladener Film ist er aber nicht das _root, sondern _root.container.....

Du kannst nun entweder LoadVariables benutzen, und gibst dem Befehl als Parameter den Ort der zugeladnenen Filme an, oder steigst gleich auf das professionellere LoadVars Objekt um (Flash Hilfe)..... sehr zu empfehlen...

anbei der Code für LoadVariables :
PHP:
/*laden des Testtextes (in den geladenen MC)*/
loadVariables("news.php", _root.mc_main, "POST");
stop();

/*Laden Externen MC's (für den Hauptteil) .. was eigentlich nicht zu meinem Problem gehört*/
function load_mc(name){
    loadmovie(name + ".swf" , _root.mc_main);
}

Grüsse B
 
Danke für deine schnelle Hilfe,

aber es klappt noch nicht. Sicherlich lags nur in meiner schlechten Ausdrucksweise. Nochmal zur Erläuterung:

PHP:
loadVariables("news.php", _root.mc_main, "POST");
stop();

ist bestandteil des geladenen Films. Also würde man ja dort den mc_main, welchen es nicht gibt, ansprechen. Oder hab ich da wieder was total vercheckt?

Aber nun schau ich mir erstmal LoadVars an.

greetz keen!
 
Hi,

bevor du grössere Projekte mit Datenbankanbindung versuchst (da verdien ich meine Brötchen mit), solltest du dir unbedingt das Objektreferenzierungsmodell von Flash reinziehen, und dich ein bisschen mit dem Debugger beschäftigen, der dir die komplette Struktur deines FIlmes offenbart.
Es kann natürlich auch sein, das wir uns falsch verstanden haben:
Ich denke du hast einen Ursprungs MC, der einen MC mc_main auf der Bühne hat, der als Container für die zugeladenen Filem dienst.
In diesem Hauptfilm gibst du dann den loadMovie Befehl. Wenn du einaml im Debugger nachsiehst, wirst du feststellen, das du jetzt eine Baumstruktur hast:
_root....>mc_main.....>Name des zugeladenen Filmes.
Dein _root ändert sich nicht, es ist der ursprüngliche Film, beim Laden in COntainer erweitert sich nur die Baumstruktur.

In deinem Falle klappt es nicht, weil die Variablen jsich a auf _root.mc_main befinden - dein subfilm aber auch eine benannte Instanz ist, du musst also die Pfade anpassen auf _root....>mc_main.....>Name des zugeladenen Filmes., oder aber alle Variablen auf _root laden und damit auch dei Pfade der einzelnen Variablen auf _root.Variablenname ändern.....oder dir das LoadVars Objekt reinziehen, was alles einfacher macht.

Grüsse
B
 
Dank dir für deine ausführlich Hilfe. Es klappt erstmal alles was ich bis dato haben wollte. Da LoadVars im Zusammenhang mit Objekten und Klassen steht.. werde ich erstmal Bücher welzen, bevor ich mir hier alles verbaue.

greetz keen!
 
Zurück