- Registriert
- 06.02.06
- Beiträge
- 78
hallo ich habe ein problem mit einem einfachen mail formular unter flash mx 2004.
ich habe vier eingabefelder:
msg_name
msg_mail
msg_betreff
msg_message
und ein ausgabefeld also dynamisch:
dislay
wenn in msg_betreff bzw msg_name falsche angaben gemacht werden gibt er die eine dafür richtige fehler meldung aus.
wenn jedoch in den anderen eingabefeldern eine falsche angabe gemacht wird, dann gibt er alle fehler meldungen aus.
woran mag das liegen?
ich bekomme es nicht behoben, oder sehe vor lauter bäumen den wald nicht mehr.
achso es gibt natürlich ein mailto php script dazu und eigentlich funktioniert der rest auch, bis auf die fehlermeldungen.
mein actionscript
vielen dank
hoffe mir kann einer helfen
gruß marco
ich habe vier eingabefelder:
msg_name
msg_mail
msg_betreff
msg_message
und ein ausgabefeld also dynamisch:
dislay
wenn in msg_betreff bzw msg_name falsche angaben gemacht werden gibt er die eine dafür richtige fehler meldung aus.
wenn jedoch in den anderen eingabefeldern eine falsche angabe gemacht wird, dann gibt er alle fehler meldungen aus.
woran mag das liegen?
ich bekomme es nicht behoben, oder sehe vor lauter bäumen den wald nicht mehr.
achso es gibt natürlich ein mailto php script dazu und eigentlich funktioniert der rest auch, bis auf die fehlermeldungen.
mein actionscript
im ahnhang findet ihr die *.fla gezipptthis.onEnterFrame = function() {
but1.setText("Abschicken");
delete this.onEnterFrame;
}
restrictFields();
function restrictFields() {
msg_name.restrict = "a-zA-Z.\\-öäüÖÄÜß ";
msg_mail.restrict = "a-zA-Z0-9_\\-.@";
}
function checkForm() {
var error = 0;
error += (msg_name.text.length < 4)? 1 : 0;
error += (msg_mail.text.length < 10)? 4 : 0;
error += (msg_mail.text.indexOf("@") < 3 || msg_mail.text.lastIndexOf("@") > msg_mail.text.length - 4) ? 8 : 0;
error += (msg_mail.text.indexOf(".") < 1 || msg_mail.text.lastIndexOf("@") > msg_mail.text.length - 2) ? 16 : 0;
error += (msg_message.text.length < 2) ? 32 : 0;
error += (msg_betreff.text.length < 2) ? 64 : 0;
return error;
}
function sendForm() {
var error = checkForm();
if (error == 0) {
var LV = new LoadVars();
LV.msg_name = escape(msg_name.text);
LV.msg_mail = escape(msg_mail.text);
LV.msg_betreff = escape(msg_betreff.text);
LV.msg_message = escape(msg_message.text);
LV.sendAndLoad("mailto.php", LV, "POST");
LV.onLoad = function() {
display.text = "\n> ";
if (this.answer != undefined) {
display.text += unescape(this.answer);
} else {
display.text += "Ein unbekannter Fehler ist aufgetreten!";
}
if (this.success == "true") clearForm();
}
} else {
display.text = errorMsg(error);
}
}
function errorMsg(error) {
var estr = "";
if (error >> 5) {estr += "\n> Gib einen Betreff ein"; error -= 64;}
if (error >> 4) {estr += "\n> Geben Sie eine Nachricht ein"; error -= 32;}
if (error >> 3) {estr += "\n> ungültige Domain in der eMail-Adresse"; error -= 16;}
if (error >> 2) {estr += "\n> ungültige eMail-Adresse"; error -= 8;}
if (error >> 1) {estr += "\n> Geben Sie eine eMail-Adresse ein"; error -= 4;}
if (error >> 0) {estr += "\n> Geben Sie Ihren Namen ein";}
return estr;
}
function clearForm() {
msg_name.text = "";
msg_mail.text = "";
msg_message.text = "";
msg_betreff.text = "";
}
vielen dank
hoffe mir kann einer helfen
gruß marco