Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 27-08-2003, 20:31   #1 (permalink)
Neuer User
 
Registriert seit: May 2003
Ort: München
Beiträge: 16
Unhappy Variable mittels LoadVars aus PHP laden

Hallo Flasher!!!

In einem Film kann der User ein MC verschieben und drehen.
Position, Rotation und der Name (in einem Textfeld) wird in Variablen übernommen.
Ich lade mittels des LoadVars-Objekts diese Variablen in ein PHP-Script, das diese Werte wiederum in eine MySQL-Datenbank einliest.

Auf dem Rückweg sollen nun diese Variablen per Buttonclick in einen ähnlichen Film eingelesen werden. Dadurch soll der gespeicherte Zustand des MC's wieder hergestellt werden und der Name im Textfeld erscheinen.

Mein letzter Versuch (von unzähligen Varianten) des Buttonscripts ist:

ActionScript:
  1. on (release) {
  2.     test = new LoadVars();
  3.     test.load("script_rueck.php");
  4.     _root.name = von_php.name;
  5.     _root.tb.message = test.message;
  6.     _root.figur._x = test.figur1x;
  7.     _root.figur._y= test.figur1y;
  8.     _root.drehkopf1._rotation = test.figur1r;
  9. }

Im PHP-script habe ich zu Testzwecken die Variablen ohne Datenbankauslesung einfach im Script belegt und dann mit echo angezeigt (so wie es meiner Meinung nach sein muss):

PHP-Code:
$figur1x=500;
$figur1y=300;
$figur1r=60;
$name="huber";


echo (
"$figur1x");
echo (
"$figur1y");
echo (
"$figur1r");
echo (
"$name"); 
Wird der Button nun gedrückt, passiert rein gar nichts.

Kann mir jemand helfen???


Im Voraus vielen Dank!!!


phantom
PhantomO1 ist offline   Mit Zitat antworten
Alt 27-08-2003, 22:07   #2 (permalink)
...
 
Registriert seit: Oct 2002
Ort: Nürnberg
Beiträge: 3.611
ActionScript:
  1. getData=new LoadVars()
  2. getData.onLoad=load_func()
  3. getData.load("file.php")
  4. but.onRelease=function(){
  5. trace(_root.var1)
  6. trace(_root.var2)
  7. // usw...
  8. }
  9. function load_func(){
  10. _root.var1=this.data1
  11. _root.var2=this.data2
  12. // usw....
  13. }
und im php:
PHP-Code:
$figur1x=500;
$figur1y=300;
// usw...
echo "&var1=".$figur1x;
echo 
"&var2=".$figur1y;
//usw... 
thorben.schmitt ist offline   Mit Zitat antworten
Alt 27-08-2003, 22:23   #3 (permalink)
Neuer User
 
Registriert seit: May 2003
Ort: München
Beiträge: 16
Hi Thorben,

so ganz versteh ich es noch nicht

ActionScript:
  1. getData=new LoadVars();
  2. getData.onLoad=load_func();
  3. getData.load("file.php");
  4. but.onRelease=function()  --> ist "but" der Name der Buttoninstanz?
  5. {
  6.   trace(_root.var1)
  7.   trace(_root.var2)
  8. }
  9. function load_func()
  10. {
  11.   _root.var1=this.data1  --> was ist data1?
  12.   _root.var2=this.data2  --> und data2?
  13. }

Hilfe!!!

phantom
PhantomO1 ist offline   Mit Zitat antworten
Alt 27-08-2003, 22:55   #4 (permalink)
...
 
Registriert seit: Oct 2002
Ort: Nürnberg
Beiträge: 3.611
ups, mach mal statt this.data2 -> this.var1 und beim 2ten genauso.

but ist der instanzname des buttons
thorben.schmitt ist offline   Mit Zitat antworten
Alt 27-08-2003, 23:18   #5 (permalink)
Neuer User
 
Registriert seit: May 2003
Ort: München
Beiträge: 16
Zitat:
Geschrieben von thorben84
ups, mach mal statt this.data2 -> this.var1 und beim 2ten genauso.

but ist der instanzname des buttons
Ich habe soweit alles übernommen:

PHP-Code:
$dk1x=500;
$name="huber";

echo 
"&name=".$name;
echo 
"&dk1x=".$dk1x
ActionScript:
  1. on (release) {
  2.     getData = new LoadVars();
  3.     getData.onLoad = load_func();
  4.     getData.load("script_rueck.php");
  5.     absenden.onRelease = function() {
  6.         trace(_root.name);
  7.         trace(_root.dk1x);
  8.     }
  9.     function load_func() {
  10.         _root.name = this.name;
  11.         _root.dk1x = this.dk1x;
  12.     }
  13.     _root.drehkopf1._x=dk1x;
  14.  
  15. }

Leider funzt nach wie vor gar nix. Der Button ist tot.
Weder wird der Inhalt des Textfeldes "name" übernommen, noch verändert sich die Position des MC "drehkopf1" mit der Variablen dk1x


phantom
PhantomO1 ist offline   Mit Zitat antworten
Alt 27-08-2003, 23:48   #6 (permalink)
Flash-Wüstling
 
Benutzerbild von pheidrias
 
Registriert seit: Dec 2001
Ort: Halle/Saale
Beiträge: 4.300
hmmm...reichlich verwirrend, was hier so steht .

Erst mal solltest du dich von der Flash5-Syntax (on(release) ) lösen und anstatt das Skript auf den Button zu schreiben, dem Button z.B. den Instanznamen "but" zu geben und im normalen Frame, wo der Button liegt dann folgendes AS versuchen :

ActionScript:
  1. _root.load_func = function(ok) {
  2. if(!ok) trace(" Fehler beim PHP laden !");
  3.                 _root.name = this.name;
  4.                 _root.dk1x = this.dk1x;
  5.         _root.drehkopf1._x=dk1x;
  6.  
  7.         };
  8.  
  9.     this.but.onRelease = function() {
  10.             trace(_root.name);
  11.              trace(_root.dk1x);
  12.         getData = new LoadVars();
  13.         getData.onLoad = _root.load_func;//kein () hinten dran !!!
  14.         getData.sendAndLoad("script_rueck.php",getData,"POST");//lieber ausführlich
  15. }

Beim PHP sollten die Variablen später dann lieber direkt vom POST-Array kommen :
PHP-Code:


$dk1x
=$_POST["dk1x"];
$nameurft8_decode($_POST["name"]);

echo 
"&name=".urlencode(utf8_enocde($name));
echo 
"&dk1x=".$dk1x
Wichtig ist außerdem, daß das ganze nicht in der Flashumgebung getestet wird, sondern natürlich auf deinem lokalen Server --> oder online <-- damit das PHP auch wirklich als PHP läut und nicht einfach für eine Text-Datei gehalten wird.

tanti saluti,
pheidrias
__________________
Ehrlich währt am LÄNGSTEN !
pheidrias ist offline   Mit Zitat antworten
Alt 12-09-2003, 20:30   #7 (permalink)
Neuer User
 
Registriert seit: May 2003
Ort: München
Beiträge: 16
Hallo nochmals,

nachdem ich mich nun einige Tage wieder mit diesem verflixten Script auseinandergesetzt habe, schreie ich erneut nach Hilfe.

Ich habe den Script nach Pheidrias' Vorschlag modifiziert:


ActionScript:
  1. _root.load_func = function(ok)
  2. {
  3.     if(!ok)
  4.     {
  5.         trace(" Fehler beim PHP laden !");
  6.     }
  7.     _root.name = this.name;
  8.     _root.dk1x = this.dk1x;
  9.     _root.drehkopf1._x = dk1x;
  10. };
  11.  
  12. this.auslesen.onRelease = function()
  13. {
  14.     getData = new LoadVars();
  15.     getData.onLoad = _root.load_func;
  16.     getData.sendAndLoad("php/script_rueck.php", getData, "POST");
  17. };

Dies ist der dazugehörige PHP-Script:

PHP-Code:
$zahl=700;
$name="huber";

echo (
"&name=" urlencode(utf8_encode($name)));
echo (
"&dk1x=" $zahl); 
Das Post-Array benötige ich in diesem Fall eigentlich nicht, da die Werte später eh aus der Datenbank kommen.

Die Variablen werden wunderbar eingelesen und können in dynamischen Textfeldern angezeigt werden.
Aber leider wird die Zahl dk1x im Flash nicht mehr als Zahl verwendet.
Ich habe vergeblich versucht damit zu rechnen und erhalte dabei immer den Wert NaN, was vermutlich "not a number" heisst.
Es handelt sich offensichtlich aber auch nicht um einen String, da auch eine Verkettung mit einem anderen String nicht funzt (hab ich aus lauter Verzweiflung ausprobiert).

What has happened?

Vielen Dank schonmal für die bisherige und hoffentlich folgende Hilfe!!!

phantom
PhantomO1 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 09:18 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele