• Blackberry DevCon – Register Now!
Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 23-12-2009, 12:25   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2009
Beiträge: 25
xml per swj.Obj.addVariable in Flash auslesen!

Hallo zusammen,

ich versuche mich seit einigen tagen an einer mehrsprachigen flashseite und steck nun völlig fest, was die umsetzung betrifft. ich lade per swf.Obj in meiner html datei den preloader der widerum eine externe swf aufruft. ich habe zwei schaltflächen (deutsch | english) in meinem externen swf, indem ich die sprachen gerne switchen möchte.


meine index.php
PHP-Code:
<?
$lang 
$_SERVER["HTTP_ACCEPT_LANGUAGE"];
if (
eregi('de'$lang)) include('index_de.html');
else include(
'index_en.html');
?>
meine index_de.html - mit swf.Obj.addVariable(xml, index_de.xml)
Code:
var swfID = 'flashObject';
var swfObj = new SWFObject("flash/preloader.swf", swfID, "100%", "100%", "9", "#ffffff");
swfObj.addParam("scale", "noscale");
swfObj.addParam("salign", "TL");
swfObj.addParam("qualitiy", "high");
swfObj.addParam("wmode", "transparent");
swfObj.addParam("allowScriptAccess", "always");
swfObj.addParam("base", "flash/");
swfObj.addVariable('language', 'de');
swfObj.addVariable('xml', 'index_de.xml');
meine index_en.html - mit swf.Obj.addVariable(xml, index_en.xml)
Code:
var swfID = 'flashObject';
var swfObj = new SWFObject("flash/preloader.swf", swfID, "100%", "100%", "9", "#ffffff");
swfObj.addParam("scale", "noscale");
swfObj.addParam("salign", "TL");
swfObj.addParam("qualitiy", "high");
swfObj.addParam("wmode", "transparent");
swfObj.addParam("allowScriptAccess", "always");
swfObj.addParam("base", "flash/");
swfObj.addVariable('language', 'de');
swfObj.addVariable('xml', 'index_de.xml');

meine xml datei
Code:
<?xml version="1.0" encoding="UTF-8"?>
<navigation>
	<deutsch>
		<menu>
			<title>men1</title>
			</menu>
			<menu>
			<title>men2</title>
			</menu>
			<menu>
			<title>men3</title>
			</menu>
			<menu>
			<title>men4</title>
			</menu>
			<menu>
			<title>men5</title>
		</menu>	
	</deutsch>
</navigation>
wenn ich nun per trace Befehl " trace (root.loaderInfo.parameters.xml) " ausgeben möchte, bekomme ich einen Fehler "undefined".

wie kann ich per AS3 auf meine zwei xml files zugreifen. Ich häng jetzt schon seit tagen dran und komme nicht weiter.

Geändert von shrekisback (23-12-2009 um 12:59 Uhr)
shrekisback ist offline   Mit Zitat antworten
Alt 23-12-2009, 12:37   #2 (permalink)
?-Developer
 
Registriert seit: Jul 2004
Ort: Zuchwil (CH)
Beiträge: 899
Versuch mal folgendes (weiss zwar nicht genau wie es heisst)?
Code:
// Ändern?
trace (root.loaderInfo.variables.xml);

// Wird wohl auch nichts herausgeben?
trace (root.loaderInfo.parameters.language);
__________________
Nur tote Fische schwimmen mit dem Strom
silentx ist offline   Mit Zitat antworten
Alt 23-12-2009, 12:39   #3 (permalink)
l2l|c4o
 
Benutzerbild von Sir Freako
 
Registriert seit: Nov 2005
Ort: düstere Grotte im Süden
Beiträge: 967
hi Shrek ,

hast du mal :

Code:
var myVar:String = LoaderInfo(stage.loaderInfo).parameters.xml;

trace(myVar);
probiert

generell ist es besser das vom stage object abzufragen

Code:
var flashvars:Object = {};

addEventListener( Event.ADDED_TO_STAGE, init );

function init( e:Event ):void
{
    removeEventListener( Event.ADDED_TO_STAGE, init );
    flashvars = stage.loaderInfo.parameters.xml;
    trace(flashvars);
    // Everything should now ready for the SWF.
}

Geändert von Sir Freako (23-12-2009 um 12:47 Uhr)
Sir Freako ist offline   Mit Zitat antworten
Alt 23-12-2009, 12:39   #4 (permalink)
Neuer User
 
Registriert seit: Nov 2009
Beiträge: 25
nein gleicher fehler wie bisher auch ...

Zitat:
var myVar:String = LoaderInfo(this.root.loaderInfo).parameters.xml;

trace(myVar);
bekomme ich den rückgabewert null ?????

Geändert von shrekisback (23-12-2009 um 12:40 Uhr)
shrekisback ist offline   Mit Zitat antworten
Alt 23-12-2009, 12:45   #5 (permalink)
l2l|c4o
 
Benutzerbild von Sir Freako
 
Registriert seit: Nov 2005
Ort: düstere Grotte im Süden
Beiträge: 967
probier das mal mit dem Event (Event.ADDED_TO_STAGE )das sollte klappen
befor das nähmlich nicht dispatcht ist ist es natürlich null

http://www.ultrashock.com/forums/act...ar-103022.html

Geändert von Sir Freako (23-12-2009 um 12:49 Uhr)
Sir Freako ist offline   Mit Zitat antworten
Alt 23-12-2009, 12:47   #6 (permalink)
Neuer User
 
Registriert seit: Nov 2009
Beiträge: 25
Zitat:
var flashvars:Object = {};

addEventListener( Event.ADDED_TO_STAGE, init );

function init( e:Event ):void
{
removeEventListener( Event.ADDED_TO_STAGE, init );
flashvars = stage.loaderInfo.parameters.xml;
trace(flashvars);
// Everything should now ready for the SWF.
}
durch diese befehlskette bekomme ich überhauptkeine Rückmeldung von der ausgabe !!!

Geändert von shrekisback (23-12-2009 um 12:57 Uhr)
shrekisback ist offline   Mit Zitat antworten
Alt 23-12-2009, 13:00   #7 (permalink)
l2l|c4o
 
Benutzerbild von Sir Freako
 
Registriert seit: Nov 2005
Ort: düstere Grotte im Süden
Beiträge: 967
curtismorley.com SWFObject.addVariable() in AS3

sory keinen plan was du da falsch machst bei mir geht es einfach so :
Code:
import flash.display.Stage;
myTxt.text = stage.loaderInfo.parameters.xml;

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
        "http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
<title>Test</title>
<script type="text/javascript" src="swfobject.js"></script>
</head>

<body style="background-color:#FFFFFF" >

<div id="example">Download Flash!</div>

<script type="text/javascript">
    	/*<![CDATA[*/
    		var mySWFObject = new SWFObject('test.swf', 'mySWF', '952', '672', '8', '#fff');
    		mySWFObject.addParam('swLiveConnect', 'true');
    		mySWFObject.addParam('allowScriptAccess', 'always');
    		mySWFObject.addParam('wmode', 'transparent');
		mySWFObject.addVariable('xml','myXml.xml');
    		mySWFObject.write('example');
    	/*]]>*/
    	</script>
</body>
</html>

Geändert von Sir Freako (23-12-2009 um 13:14 Uhr)
Sir Freako ist offline   Mit Zitat antworten
Alt 23-12-2009, 14:24   #8 (permalink)
Neuer User
 
Registriert seit: Nov 2009
Beiträge: 25
super hat gefruchtet :-)... jetzt nur noch ein kleines problemchen ...
und zwar gibt er mir nur bei der variable xml ... den namen de.xml aus.

wie kann ich es bewerkstelligen, das er mir die xml ausliest und nicht nur den namen anzeigt.
shrekisback ist offline   Mit Zitat antworten
Alt 23-12-2009, 18:18   #9 (permalink)
Neuer User
 
Registriert seit: Nov 2009
Beiträge: 25
var xmlloader:URLLoader = new URLLoader();
xmlloader.addEventListener(Event.COMPLETE, parseXML);
xmlloader.load(new URLRequest("stage.loaderInfo.parameters.xml"));
function parseXML(evt:Event)
{
var xml:XML = XML(xmlloader.data);
xml.ignoreWhite = true;

// Textfelder deklarieren und ausgeben //
myTxt.text = xml.children()[0].menu[0].title;
}

dadurch bekomme ich eine Fehlermeldung:
Error #2044: ioError unverarbeitet. text=Error #2032: Stream-Fehler. URL: file:///web/webprojekte/flash%5Fsprachen%5Frun%5Flifewear/flash/stage.loaderInfo.parameters.xml at main_fla::MainTimeline/frame1()

könnte mir da jemand einen kleinen tip geben, wie ich die daten aus dem xml file bekomme und nicht den wert " xml_de.xml"....

wäre super nett, wenn mir da jemand weiterhelfen könnte.
shrekisback ist offline   Mit Zitat antworten
Alt 23-12-2009, 19:43   #10 (permalink)
l2l|c4o
 
Benutzerbild von Sir Freako
 
Registriert seit: Nov 2005
Ort: düstere Grotte im Süden
Beiträge: 967
das sollte natürlich so nicht als string angegeben werden

xmlloader.load(new URLRequest("stage.loaderInfo.parameters.xml"));

sondern so

xmlloader.load(new URLRequest(stage.loaderInfo.parameters.xml));
Sir Freako ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
as3, swfobject, xml

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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
swfObject -> addVariable mit & Ali-Gator ActionScript 3 2 01-08-2008 10:53
SWFObject addVariable livedevel JavaScript & jQuery 2 21-02-2008 12:18
addVariable("main", "home") Linowitch ActionScript 3 2 17-01-2008 20:07
Flash von extern stoppen, mit so.addVariable? rib ActionScript 1 1 14-01-2008 22:17
swfObject: addVariable funktioniert nicht! Zett Flash 8 2 25-10-2007 13:30


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:14 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele