[RESOLVED] Problem med "@" i input field

Se deafdigit's brugerprofil
Indmeldt: 06-02-2010
Indlæg: 3
Er offline

Hej alle sammen,

Jeg har lavet kontaktformular i flash, der via PHP sender en mail til min emailadresse med de indtastede informationer. Det hele fungerer fint, bortset fra én lille ting - et problem jeg aldrig før er stødt på.

Når jeg uploader swf-filen og kører den på min hjemmeside må jeg ikke indtaste "@" på den almindelige danske måde (Alt Gr + 2), for så skriver den bare et 2-tal. Hvis jeg til gengæld trykker Shift + 2, så laver den et @, men det kan besøgende på min hjemmeside jo ikke vide.

Problemet er særlig underligt, for hvis jeg kører swf-filen fra flash (Ctrl + Enter) eller kører den efter den er eksporteret (men altså ikke fra hjemmesiden), så er der ingen problemer med @'et. Det er kun når den køres via hjemmesiden.

Er der nogen af Jer, der kender til dette problem, og ligger inde med en løsning?

Her er min AS3-kode:

System.useCodePage = true;//Gør at du undgår problemer med æøå
var emailData:URLVariables = new URLVariables();//holder vores data som sendes til php'en
var request:URLRequest;//vores url request
var loader:URLLoader = new URLLoader();//URLLoaderen sender data'en til php
 
sendKnap.addEventListener(MouseEvent.CLICK, sendMail);//"Lytter" om der bliver trykket på knappen "sendKnap"
loader.addEventListener(Event.COMPLETE, mailSendt);//Lytter efter hvornår mailen er sendt
 
function sendMail(e:Event):void
{
//Checker om der er indtastet noget i alle felterne med valider() functionen, som vi laver nede under.
	if(valider()){
 
	statusText.text = "Vent venligst sender mail...";//Skriver at mailen sendes
	//Tilføjer hvad der står i input felterne til vores URLVariabler
	emailData.navn = navnInput.text;
	emailData.kontakt = kontaktInput.text;
	emailData.email = emailInput.text;
	emailData.besked = beskedInput.text;
 
	request = new URLRequest("email1.php");//Siger hvor php filen ligger
	request.method = URLRequestMethod.POST;//Fortæller at dataen skal sendes som POST variabler
	request.data = emailData;//Tilføjer URLVariablerne til vores request
	loader.load(request);//Sender dataen til php filen
 
	}
        else
        {
		statusText.text = "Udfyld alle felter, tak.";//Skriver at man skal udfylde alle felter
	}
}
 
function valider():Boolean{
 
        //Checker om alle felterne er blevet udfyldt
 
	if(navnInput.text != "" && kontaktInput.text != "" && emailInput.text != "" && beskedInput.text != ""){
		return true;//true, der noget i alle felter
	}else{
		return false;//false, der er ikke skrevet i alle felterne
        }
 
}
 
 
//Denne function "Kører" når mailen er blevet sendt
function mailSendt(e:Event){
	trace("mail sendt")
	navnInput.text = "";//tømmer input feltet
	kontaktInput.text = ""; //tømmer input feltet
	emailInput.text = "";//tømmer input feltet
	beskedInput.text = "";//tømmer input feltet
	gotoAndStop(3);
}

Jeg håber i kan finde mig en løsning Smile
På forhånd tak,
//deafdigit

Kommentarer

Se Nord's brugerprofil
Indmeldt: 14-07-2006
Indlæg: 19
Er offline

Har set det før i bl.a. FireFox. Det hænger sammen med hvilken wmode du bruger i din embed kode i html'en.

Der ligger en forklaring her:
http://baseonmars.co.uk/bugs/wmode/

Se deafdigit's brugerprofil
Indmeldt: 06-02-2010
Indlæg: 3
Er offline

Tak for svaret, Nord.

Hvor underligt det end måtte være, så virkede det rent faktisk, som foreslået på http://baseonmars.co.uk/bugs/wmode/ at ændre wmode til window i stedet for transparent.

Tak for hjælpen Smile