Strona 1 z 2
Problem z wysłaniem zmiennej z pliku PHP do flash.
: pn mar 24, 2008 5:08 pm
autor: tomog2
Posiadam kod:
Kod: Zaznacz cały
this.loadVariables ("aktualizacja.php", "POST");
this.grafika1.text = this.grafika1;
if (grafika1.text == "1") {
G1_1._alpha = 0;
G2_1._alpha = 0;
G3_1._alpha = 0;
G4_1._alpha = 0;
G5_1._alpha = 0;
G6_1._alpha = 0;
}
else {
G1_1._alpha = 100;
G2_1._alpha = 100;
G3_1._alpha = 100;
G4_1._alpha = 100;
G5_1._alpha = 100;
G6_1._alpha = 100;
}
Ma on za zadanie pobrać z pliku
aktualizacja.php daną grafika1, a następnie umieścić ją w polu
Dynamic Text. Następnym krokiem jest porównanie zawartości tego pola w warunku if.
Noi wszystko działa jednakże warunek cały czas nie spełnia się. Ciągle jest fałszywy.
Podejrzewam że flash najpierw wykonuje warunek a dopiero później pobiera daną do pola
Dynamic Text.
Macie jaki pomysł jak to zrobić żeby było dobrze?
Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: pn mar 24, 2008 9:38 pm
autor: Marek_bf
tomog2 pisze:Podejrzewam że flash najpierw wykonuje warunek a dopiero później pobiera daną do pola Dynamic Text.
Tak.
Używaj
LoadVars i metody onLoad
Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: wt mar 25, 2008 11:59 am
autor: tomog2
Rozumiem że użyc onLoad zarówno na kodzie pobierania wartości z pliku jak i na warunku?
Czyli:
onLoad.... {
pobieranie danych z pliku php;
}
onLoad.... {
sprawdzanie warunku;
}
To oczywiście bardzo uproszczony zapis.

Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: wt mar 25, 2008 1:01 pm
autor: Marek_bf
Kod: Zaznacz cały
var sterowaneMcArr:Array = new Array(G1_1, G2_1, G3_1, G4_1, G5_1, G6_1);
var pathPhp:String = "aktualizacja.php";
var myLoadVars:LoadVars = new LoadVars();
//
myLoadVars.onLoad = function(ok:Boolean) {
if (ok) {
grafika1.text = sprawdz(this.grafika1, "1");
}
};
myLoadVars.load(pathPhp);
//
function sprawdz(varsValue:String, testValue:String):String {
if (varsValue == testValue) {
widocznosc(sterowaneMcArr, 100);
} else {
widocznosc(sterowaneMcArr, 0);
}
return varsValue;
}
//
function widocznosc(sterowaneMcArr:Array, alphaValue:Number):Void {
for (var i = 0; i < sterowaneMcArr.length; i++) {
sterowaneMcArr[i]._alpha = alphaValue;
}
}
Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: wt mar 25, 2008 5:37 pm
autor: tomog2
Marek_bf, wszystko pięknie ładnie, tyle że funkcja po pobraniu zamiennej z pliku php ciągle ustawia moje mc G1_1, G2_1,...G6_1 na niewidoczne. Oznacza to że warunek nie jest spełniony. Zastanawiam się czy to nie wina mojego pliku php.
Wygląda on tak
[php]<?
print "&grafika1=1";
?>[/php]
Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: wt mar 25, 2008 8:11 pm
autor: Marek_bf
[php]<?php
echo 'grafika1=1';
?>[/php]
Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: wt mar 25, 2008 8:43 pm
autor: tomog2
Niestety, żadnych zmian.
Zastanawiam się co jeszcze może być nie tak z tym skryptem.
Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: wt mar 25, 2008 8:55 pm
autor: Marek_bf
Sprawdź jaka wartość Ci wyświetli ten skrypt:
Kod: Zaznacz cały
var pathPhp:String = "aktualizacja.php";
var myLoadVars:LoadVars = new LoadVars();
//
myLoadVars.onLoad = function(ok:Boolean) {
if (ok) {
grafika1.text = this.grafika1.length;
}
};
myLoadVars.load(pathPhp);
Powinno być 1
Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: wt mar 25, 2008 9:52 pm
autor: tomog2
Oczywiście, że wyświetla. Próbowałem już na przeróżne sposoby: zmieniałem typ zmiennej ze string, na int, real, itp. Wymuszałem też w pliku PHP żeby zmienna przekazywana była typu string, na int, real, itp.
Zastanawia mnie jedno? Dlaczego wciąż funkcja nie spełnia warunku! Przyznam się że nie mam pomysłu.
Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: wt mar 25, 2008 9:58 pm
autor: Marek_bf
U mnie podany przykład działa. Pokaż pliki.
Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: wt mar 25, 2008 10:12 pm
autor: tomog2
Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: wt mar 25, 2008 10:37 pm
autor: argik
czyli dwa razy "&" - przed nazwa zmiennej i po wartosci zmiennej
Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: śr mar 26, 2008 7:42 am
autor: tomog2
Dzięki
Marek_bf wszystko działa. Jesteś niezastąpiony.

Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: śr mar 26, 2008 8:17 am
autor: Marek_bf
Trochę ulepszony skrypt:
Kod: Zaznacz cały
var sterowaneMcArr:Array = new Array(G1_1, G2_1, G3_1, G4_1, G5_1, G6_1);
widocznosc(sterowaneMcArr, 0);
var pathPhp:String = "aktualizacja.php";
var myLoadVars:LoadVars = new LoadVars();
//
myLoadVars.onLoad = function(ok:Boolean) {
if (ok) {
grafika1.text = sprawdz(this.grafika1, "1");
} else {
sprawdz("0", "1");
}
};
myLoadVars.load(pathPhp + "?" + new Date().getTime());
//
function sprawdz(varsValue:String, testValue:String):String {
if (varsValue == testValue) {
widocznosc(sterowaneMcArr, 100);
} else {
widocznosc(sterowaneMcArr, 0);
}
return varsValue;
}
//
function widocznosc(sterowaneMcArr:Array, alphaValue:Number):Void {
for (var i = 0; i < sterowaneMcArr.length; i++) {
sterowaneMcArr[i]._alpha = alphaValue;
}
}
Re: Problem z wysłaniem zmiennej z pliku PHP do flash.
: czw mar 27, 2008 3:45 pm
autor: tomog2
Marek_bf mam do ciebie jeszcze jedno pytanie. Powiedz mi jak zmienić powyższy kod w taki sposób, żeby:
1. Wysyłam jakiś ciąg znaków do pliku PHP,
2. Plik PHP zmiania ten ciag na powiedzmy cyfrę 2 lub 7,
3. Importuje zmienną z pliku PHP do pola Dynamic Text,
4. Sprawdzam czy zaimportowana dana jest równia 2, jeżeli tak skacze do klatki 2, jeżeli nie do 4.
O ile mam już 1,2 i 3 krok, o tyle nie mogę za cholerę wykonac warunku. Chodzi o to że wykonuje sie on za wcześnie, nie czeka aż zaimportuje dana. Wiec cały czas skacze do klatki 4.
Masz moze jakies proste rozwiazanie, ale dobry przykład do samoszkolenia.
