Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 10-11-2004, 22:33   #1 (permalink)
...
 
Registriert seit: Mar 2002
Ort: Montréal, Québec
Beiträge: 18
Question Knobelaufgabe: PHP-Variable -> Flash

Hallo zusammen,


folgendes Ratespielchen hab ich hier mal fuer Euch, bei dem ich so langsam aber sicher irre werde:

Ich hab eine php-Datei (test1.php), die an eine 2. php-Datei (test2.php) per GET eine variable uebergibt. In test2.php gibt es einen Flashfilm, der den Inhalt der variablen, nachdem sie per echo-Befehl ausgegeben wurde, einlesen soll. Die Quellcodes sind im Einzelnen:

(Das Ergebnis kann man sich online unter http://hybrid.concordia.ca/~bero/dar...ille/test1.php, .../test2.php, .../test3.php anschauen)


test1.php:

<form enctype="multipart/form-data" method="GET" action="test2.php">

<p>Location:
<input name="wert1" type="text" size="50" maxlength="50">
<br>
</p>
<p><br>
<input type="submit" name="submit" value="Upload">
</p>

</form>




test2.php:

<?php

$vari = $HTTP_GET_VARS['wert1'];
echo ("&myVar=".$vari);

?>


Die Variablenuebergabe von test1.php nach test2.php funktioniert einwandfrei, udn der echo-Befehl gibt das ganze auch so aus, wie ich es fuer Flash verstaendlich sein muesste, naemlich mit dem &-Zeichen am Anfang usw. Das Problem: Mein Flashfilm zeigt das ganze nicht an. Der Quellcode in ActionScript ist schlicht:

_root.loadVariables("test2.php");
_root.txt.text = myVar;


Das merkwuerdige an der Sache ist, dass die Anzeige im Flashfilm funktioniert, sobald ich die Variable nicht uebergebe, sondern lokal in der php-Datei selbst deklariere:


test3.php:

$vari = "123";
echo ("&myVar=".$vari);


Die echo-Ausgaben von test2.php und test3.php sind ja letztendlich identisch, mit dem Unterschied, dass erstere per GET-Uebergabe erzeugt wurde...

Kann mir hier irgendjemand sagen, wo der Fehler liegen koennte?

Besten Dank

Christian
Beetlebum ist offline   Mit Zitat antworten
Alt 10-11-2004, 22:45   #2 (permalink)
_//\\#//\\_
 
Benutzerbild von warrantmaster
 
Registriert seit: Jan 2003
Beiträge: 7.060
irgendwie verstehe ich das jetzt nicht ganz,
du übergibst die var von php1 zu php2 und erwartest,
daß flash sie im selben moment von php2 empfängt ?
warrantmaster ist offline   Mit Zitat antworten
Alt 10-11-2004, 22:46   #3 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Ähm, wenn ich das richtig verstanden habe, übergibt test 1 die Variable an test2. Dann musst du natürlich auch test1.php mit loadVariables nachladen und nicht test2.php.

BTW: nimm besser das LoadVars-Objekt zum Nachladen von Variablen, Beispiele findest du en Masse unter "Suchen".
  Mit Zitat antworten
Alt 17-11-2004, 03:33   #4 (permalink)
...
 
Registriert seit: Mar 2002
Ort: Montréal, Québec
Beiträge: 18
Knobelaufgabe

Ich hab das Ganze nochmal etwas genauer und uebersichtlicher aufgeschrieben... Also:


Ich habe eine php-Datei main.php, die eine swf-Datei und u.a. diese Zeilen enthaelt:

<?php

$flashVar = urlencode($xFocus);
echo"&msg=$flashVar";

?>

Die php-Variable $xFocus mit dem Wert 49 wird von der Vorgaengerseite per GET uebertragen, was auch einwandfrei klappt. Die Ausgabe der Datei im Browser sieht entsprechend so aus:

&msg=49



Die Flashdatei enthaelt ein Textfeld und diesen ActionScript-Code:



lv = new LoadVars();

lv.onLoad = function() {
phpVar = this.msg;
_root.mytext.text = phpVari;
}

lv.load("main.php");



Das Textfeld bleibt leer. Aendert man nun aber die php-Datei so um, dass man die Variable $xFocus direkt im php-Quelltext deklariert, so wird die 49 korrekt in der swf-Datei angezeigt, womit der ActionScript-Code als Fehler ausgeschlossen werden kann.

Das Merkwuerdige daran ist, dass der HTML-Code, der von der php-Datrei erzeugt wird, in beiden Faellen identisch ist.


Irgendwelche Ideen, wo ich irgendetwas uebersehen ahben koennte?
Beetlebum ist offline   Mit Zitat antworten
Alt 17-11-2004, 04:08   #5 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
ActionScript:
  1. phpVar = this.msg;
  2. _root.mytext.text = phpVari;
Wenn du das genauso hast, funzt es auch nicht. Du hast einmal "phpVar" und einmal "phpVari". Check mal, was ein trace("phpVar="+phpVar) im Testmodus ausgibt...
  Mit Zitat antworten
Alt 17-11-2004, 07:21   #6 (permalink)
...
 
Registriert seit: Mar 2002
Ort: Montréal, Québec
Beiträge: 18
Nein, daran liegt es nicht. Die beiden unterschiedlichen Variablennamen waren nur ein Tippfehler in meinem Post. Wie gesagt, das ActionScript funktioniert einwandfrei, solange es mit einer direkt in dem aktuellen PHP-Skript deklarierten Variablen gefuettert wird. Das Problem tritt erst auf, wenn stattdessen die Variable per $HTTP_GET_VARS... usw. aus einer vorhergehenden Seite geladen wird. Und das obwohl der HTML Code letztlich absolut identisch ist.

Trotzdem danke fuer Deine Muehen! )
Beetlebum 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 18:40 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele