campiObbligatori = new Array("nome","cognome","messaggio");
campiObbligatori.reverse();
function checkAll() {
errorMessage.text = "";
errore = false;
//
checkMe("email");
//
for(var i=0;i<campiObbligatori.length;i++){
if (_root[campiObbligatori[i]].text.length <= 0) {
stringErrore = "Campo " + campiObbligatori[i] + " obbligatorio, Grazie";
errore = true;
}
}
//
}
function checkMe(me) {
// controlla se c'è un solo "@"
var count = 0;
for(var i=0;i<_root[me].text.length;i++) {
if (_root[me].text.charAt(i) == "@") {
count++;
}
}
if (count != 1) { errore = true; }
// controlla se c'è " "
var count = 0;
for(var i=0;i<_root[me].text.length;i++) {
if (_root[me].text.charAt(i) == " ") {
count++;
}
}
if (count != 0) { errore = true; }
// se non c'è errore
// divide in due stringhe divise da "@"
// e le analizza singolarmente
if (!errore) {
dividi = _root[me].text.split("@");
if (dividi[0]<1) { errore = true; }
if (dividi[1].indexOf(".")<0) {
errore = true;
} else {
dominio = dividi[1].split(".");
if (dominio[0].length<2) { errore = true; }
if (dominio[1].length<2) { errore = true; }
}
} else {
stringErrore = "Inserire e-mail corretta, Grazie";
}
}
_root.submit.onPress = function () {
checkAll();
//
if (errore) { // se errore = true
errorMessage.text = stringErrore;
} else { // se errore diverso da true
// invia il form
var variabile = new LoadVars ();
//
for(var i=0;i<campi.length;i++){
variabile[campi[i]] = _root[campi[i]].text;
}
variabile.sendAndLoad("flashmailme.pl", variabile, "POST");
//
variabile.onLoad = function (success) {
if (success && variabile.leggimi) {
_root.sendLoad = variabile.leggimi;
//} else {
//sendLoad.text = "SI E' VERIFICATO UN ERRORE";
}
};
}
}
Questo deriva dal vecchio tutorial di sephirot (mi sembra)
Qui c'è tutto ma non mi ricordo più niente, l'ho fatto l'anno scorso... Con la funzione check me("nomedellamail") controlli l'email, mentre aggiungendo i nomi delle caselle di input al primo array controlli se sono riempiti o meno.
Il parametro flashmailme.pl va cambiato con l'indirizzo del tuo modulo php, se invece del post usi il get devi cambiare anche quello.
Il php deve restituire come risultato &leggimi=qualunque messaggio di errore o conferma.
Questo verrà letto automaticamente dal flash e poi assegnato alla casella dinamica sendLoad.
Poi serve un'altra casella dinamica chiamata errorMessage.