Har en kod som ska skicka lite variabler till en php sida, där de tas emot och lagras.
var request:URLRequest = new URLRequest ("savescore.php");
request.method = URLRequestMethod.POST;
var variables:URLVariables = new URLVariables();
var varName:String;
var varEmail:String;
var varScore:Number;
var scrollform_out1:Tween;
varScore = totalScore_finished;
variables.sName = varName;
variables.sEmail = varEmail;
variables.iScore = varScore;
request.data = variables;
var loader:URLLoader = new URLLoader (request);
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
loader.addEventListener(Event.COMPLETE, onComplete);
loader.load(request);
function onComplete(e:Event):void{
scrollform_out1 = new Tween(container, "x", Regular.easeOut, 0, 530, 5, false);
scrollform_out1.addEventListener(TweenEvent.MOTION_FINISH, movetoThankYou);
}
Detta fungerar perfekt när jag testkör den i Firefox, men i Internet Explorer så går den aldrig vidare till onComplete funktionen, dock sparar den värdena i databasen.. någon som vet vad som kan vara galet? Har testat att stänga av alla säkerhetsgrejer i IE, men inget hjälper.
Hur kan jag få ut eventuella felmeddelande etc som t.ex
Har testat lite mera nu och jag och en polare sitter båda två på Sony Vaio bärbara datorer, där fungerar det inte i IE, men på en annan dator fungerar det utan problem i IE, då körs onComplete funktionen. Kan någon på datorn påverka det?
Har testat på en macintosh på både Safari och Firefox och den går inte vidare och kör onComplete funktionen där heller... :(
Eftersom load metoden på Loader klassen sker asynkront så kan du inte få ut felmeddelanden genom att omsluta den i ett try/catch block. Så länge som din request är korrekt kommer den aldrig hamna i catch blocket.
Det du behöver göra är att lyssna efter ett error event. Det gör du genom att skriva:
HTTP/1.1 200 OK
Date Tue, 24 Mar 2009 15:35:22 GMT
Server Apache/2.2.8 (Ubuntu) mod_python/3.3.1 Python/2.5.2 PHP/5.2.4-2ubuntu5.3 with Suhosin-Patch
X-Powered-By PHP/5.2.4-2ubuntu5.3
Content-Length 0
Content-Type text/html
Tog bort onComplete listenern just nu och då är det ju inga problem, det fungerar ju bra etc, men vad är nackdelarna?
Måste "savescore.php" returnera något egentligen?
Jag vill minnas att det finns ett problem då servern inte returnerar någon data (som du ser får du bara HTTP-headers från servern.) Testa att bara skriva ut en tom rad eller någon textsträng som verifikation.
Sedan för att klargöra: Bryngfors har rätt i att en try-clause inte kan fånga ett exception som kastas under överföringen, men vissa exceptions kastas redan i load()-metoden, så det var inte helt befängt att prova det som du gjorde. Exempel på sådana fel är säkerhetsrelaterade (om jag inte missminner mig), d.v.s. när du exempelvis försöker komma åt nätverket utan att ha tillgång till det, eller dylikt.
265 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2