O ile nie przegapiłeś fragmentu kodu, który zmienia wynik, w rzeczywistości deklarujesz var myscore = 0
w górnej części bloku kodu AS3.
Pierwszą rzeczą byłoby zmienić to na 100
, a następnie uruchom skrypt i sprawdź, czy ta zmodyfikowana zmienna wyniku jest przesyłana. Jeśli tak, to wszystko działa tak, jak powinno.
Aktualizacja:
Zmieniłeś swoje pytanie i chcesz mieć możliwość wczytania danych. Masz już skonfigurowaną funkcję do tego przez loader.addEventListener(Event.COMPLETE, dataOnLoad)
. Musisz tylko pobrać dane, które wysyła twój skrypt PHP. Dostęp do tego można uzyskać za pomocą evt
parametr w dataOnLoad
funkcja:
function dataOnLoad(evt:Event):void {
trace("Data submission complete");
var returnVars = evt.target.data;
trace("***********************");
for (var myVars in returnVars) {
trace(myVars + ": " + returnVars[myVars]);
}
trace("***********************");
}
Aktualizacja 2:
Poprosiłeś o pomoc przy wczytywaniu wyników z bazy danych. Ponieważ masz już plik PHP, który pobiera to z bazy danych (załóżmy, że nazywa się scores.php
),m po prostu potrzebujesz funkcji we Flashu, aby ją załadować.
Masz już podstawowe funkcje, korzystając z URLLoader
i Odbiorniki Zdarzeń. Potrzebujesz ich tylko do zastosowania do prostego obciążenia:
btn_scores.addEventListener(MouseEvent.CLICK, loadScores);
function loadScores(e:MouseEvent):void {
var fileLoader:URLLoader = new URLLoader();
fileLoader.addEventListener(Event.COMPLETE, scoresLoadComplete);
fileLoader.load(new URLRequest("scores.php"));
}
function scoresLoadComplete(evt:Event):void {
try {
var returnVars = evt.target.data;
trace("***********************");
for (var myVars in returnVars) {
trace(myVars + ": " + returnVars[myVars]);
}
trace("***********************");
} catch (err:Error) {
trace("Can't parse loaded file: " + err.message);
}
}
Uwaga że twój plik PHP obecnie zwraca tabelę wyników HTML. To nie zadziała we Flashu; znacznie lepiej byłoby wysłać pary klucz/wartość i przeanalizować je lub po prostu podstawową listę wyników w formacie HTML.