Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 13-07-2009, 18:25   #1 (permalink)
Neuer User
 
Registriert seit: Jun 2009
Beiträge: 26
Question Problem: Während Laufzeit Variablen empfangen

Schönen guten Abend an alle Flasher,

Ich habe mal wieder ein Problem und komme von selbst nicht weiter. Wurde vielleicht auch schon besprochen, doch das was ich dazu gefunden habe hat mich nicht wirklich weiter gebracht.

Ziel:
- SWF über HTML laden
- Button drücken
- Aus DB Koordinaten in Ausgabetextfeld anzeigen

Da habe ich gleich mehrere Probleme welche aber bestimmt nur eine Ursache haben, mein Hirn.

Problem Nr.1

Starte Ich die swf direkt über Flash (damit meine ich Strg+Enter) und ich gebe den Echo in PHP wie folgt aus:

PHP-Code:
echo "&xK=200&yK=300&end=end"
zeigt er mir alles normal an (xK: 200 yK: 300)

gebe ich den Echo aus wie es sein soll

PHP-Code:
echo "&xK=“.$row['xK'].“&yK=“.$row['yK'].“&end=end"
gibt er mir dann auch folgendes aus: (xK: ".$row['xK']." yK: ".$row['yK'].");

Hier mein Quelltext:

fla:
Code:
import fl.controls.*;
import flash.net.*;

var getDataBt:Button = new Button();
getDataBt.x = 200;
getDataBt.y = 200;
getDataBt.label = "Daten anzeigen";
addChild(getDataBt);
getDataBt.addEventListener(MouseEvent.CLICK, getDataHandler);

var ausgabe:TextField = new TextField();
ausgabe.x = 200;
ausgabe.y = 100;
ausgabe.width = 200;
ausgabe.height = 50;
ausgabe.border = true;
addChild(ausgabe);

var myLoader = new URLLoader();

function getDataHandler(event:MouseEvent):void {
	var myRequest:URLRequest = new URLRequest("getKooData.php");
	myRequest.method = URLRequestMethod.POST;
	myLoader.addEventListener(Event.COMPLETE, completeHandler);
	myLoader.load(myRequest);
}

function completeHandler(event:Event):void
{
   myLoader.removeEventListener(Event.COMPLETE, completeHandler);
   var loader2:URLLoader = URLLoader(event.target);
   var variables:URLVariables = new URLVariables(loader2.data);
   trace("xK: "+variables.xK);
   trace("yK: "+variables.yK);
   ausgabe.text = "xK: "+variables.xK+" yK: "+variables.yK;
}
html:
HTML-Code:
<html>
 <head>
  <title>GetKoordinate</title>
 </head>
 <body>
	<object id="test" width="700" height="600" data="/getKooData.swf" type="application/x-shockwave-flash">
		<param name="align" value="CENTER" />
		<param name="wmode" value="transparent" />
		<param name="quality" value="high" />
		<param name="bgcolor" value="#FFFFFF" />
		<param name="src" value="/getKooData.swf" />
		<param name="name" value="test" />
	</object>
 </body>
</html>
PHP-Code:
$sSQL "SELECT xK, yK FROM koordinates WHERE imgNr=1;";

$clsDb->query($sSQL);

while (
$row $clsDb->getResult()){
    echo 
"&xK=".$row['xK']."&yK=".$row['yK']."&end=end";
}

$clsDb->free(); 
rufe ich die PHP-Datei direkt auf wird mir der echo richtig ausgegeben.

Problem Nr.2

gebe ich den echo ohne Variablen aus (also "hart" reingeschrieben), so gibt mir flash bei:
Code:
var myRequest:URLRequest = new URLRequest("getKooData.php");
die Daten richtig aus!
bei
Code:
var myRequest:URLRequest = new URLRequest("http://localhost/getKooData.php");
jedoch kommt folgfende Fehlermeldung:
Code:
Error: Error #2101: Der an URLVariables.decode() übergebene String muss ein URL-kodierter Abfrage-String mit Name/Wert-Paaren sein.
	at Error$/throwError()
	at flash.net::URLVariables/decode()
	at flash.net::URLVariables$iinit()
	at kotzen_fla::MainTimeline/completeHandler()
	at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction()
	at flash.events::EventDispatcher/dispatchEvent()
	at flash.net::URLLoader/flash.net:URLLoader::onComplete()


so und last but not least
(find ich ja mal total seltsam)

Problem Nr.3
versuche ich (egal welche Methode) über HTML aufzurufen erscheint einfach mal NIX im Ausgabefeld.

Joah so schauts aus.
Danke schon mal für Hilfe und Antworten.

Greez
*André*
kami1983 ist offline   Mit Zitat antworten
Alt 13-07-2009, 22:17   #2 (permalink)
lebt in stereo
 
Benutzerbild von figure8
 
Registriert seit: Mar 2008
Ort: karlsruhe
Beiträge: 1.093
schalom. was macht ihr denn alle gerade mit php? dein problem liegt im datentyp. probier deinen response mal so:


ActionScript:
  1. _loader = new URLLoader();
  2. _loader.dataFormat = URLLoaderDataFormat.TEXT;
  3. // ...
  4. _loader.addEventListener(Event.COMPLETE, setContent);
  5. _loader.load(_request);
  6.  
  7.  
  8. private function setContent(event:Event):void {
  9.     try
  10.     {
  11.         _content = new URLVariables(event.target.data);
  12.     }
  13.     catch (error:Error)
  14.     {
  15.         trace("a decode-error occured: " + error);
  16.     }
  17. }

wenn das nicht klappt, stimmt irgendwas mit deinem php-echo nicht..

dein textfeld im html..hmhm, schriften richtig eingebettet, funktioniert ein statisches textfeld?
__________________
* Flash-JunkieMusiker & Grafiker

# Marvin Blase
# Speaker, Author, Silly Billy.
# @beautifycode

Geändert von figure8 (13-07-2009 um 22:20 Uhr)
figure8 ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
as3, laufzeit, php, urlrequest, variablen

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 16:33 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele