Codice PHP:
//inizializzo una variabile booleana per la correttezza dei campi
var tutto_ok:Boolean=false;
//inizializzo l'array che conterrà tutti i campi
var dati_utente=new LoadVars();
//inizializzo l'array x la p.iva
var p_iva=new LoadVars();
//inizializzo l'array x il cf
var cod_f=new LoadVars();
//inizializzo l'array x l'email
var e_mail=new LoadVars();
//inizializzo le variabili x i controlli dell'iva,cf e email
var var_iva:String="";
var var_cf:String="";
var var_email:String="";
//funzione onLoad per il cf,richiamata quando sendAndLoad ha terminato
cod_f.onLoad = function (success:Boolean):Void
{
if (success)
{
if (this.result == "exist")
{
var_cf = "exists";
}
else
{
var_cf = "ok";
}
}
else
{
var_cf = "errore6";
}
processa_cf();
};
//funzione onLoad per l'iva
p_iva.onLoad = function (success:Boolean):Void
{
if (success)
{
if (this.result == "exist")
{
var_iva = "exists";
//trace(var_iva);
}
else
{
var_iva = "ok";
}
}
else
{
var_iva = "errore6";
}
processa_iva();
};
//funzione onLoad per l'email
e_mail.onLoad = function (success:Boolean):Void
{
if (success)
{
if (this.result == "exist")
{
var_email = "exists";
}
else
{
var_email = "ok";
}
}
else
{
var_email = "errore6";
}
processa_email();
};
function controlla_campi_reg1()
{
//resetto tutti i campi di segnalazione di errori
errore_cf=errore_iva=errore_email="";
tutto_ok=true;
/*IVA*/
var_iva = controlla_iva (iva.text);
switch (var_iva)
{
case "errore1":
errore_iva = "campo obbligatorio";
break;
case "errore2": case "errore3":
errore_iva = "campo errato";
break;
case "ok":
ottieni_iva();
break;
}
if(var_iva!="ok")
tutto_ok=false;
/*CF*/
var_cf = controlla_cf (cf.text);
switch (var_cf)
{
case "errore1":
errore_cf = "campo obbligatorio";
break;
case "errore2":
errore_cf = "lunghezza errata";
break;
case "errore3":
errore_cf = "caratteri non validi";
break;
case "ok":
ottieni_cf();
break;
}
if(var_cf!="ok")
tutto_ok=false;
/*EMAIL*/
var_email= controlla_email (email.text);
switch (var_email)
{
case "errore1":
errore_email = "campo obbligatorio";
break;
case "errore2":
errore_email = "campo errato";
break;
case "ok":
ottieni_email();
break;
}
if(var_email!="ok")
tutto_ok=false;
if(tutto_ok)
{
//proseguo per l'inserimento
}
}
/***************************FUNZIONI X IL CF***************************/
function ottieni_cf ()
{
cod_f["c"] = cf.text;
cod_f.sendAndLoad ("http://127.0.0.1/cf.php",cod_f,"POST");
}
function processa_cf()
{
switch (var_cf)
{
case "errore6":
errore_cf = "errore caricamento";
break;
case "exists":
errore_cf = "CF già esistente";
break;
case "errore_query":
errore_cf = "errore query lettura";
break;
case "ok":
dati_utente["cf"] = cf.text;
break;
case undefined:
tutto_ok=false;
break;
default:
tutto_ok=false;
break;
}
if(var_cf!="ok")
tutto_ok=false;
}
function controlla_cf (c):String
{
if (c.length == 0)
return "errore1";
else if (c.length !=16)
return "errore2";
else
{
c=c.toUpperCase();
var trovato:Boolean=false;
var mix:Array=['A' , 'B' , 'C' , 'D' , 'E' , 'F' , 'G' , 'H' , 'I' , 'J' , 'K' , 'L' , 'M' , 'N' , 'O' , 'P' , 'Q' , 'R' , 'S' , 'T' , 'U' , 'V' , 'W' , 'X' , 'Y' , 'Z' , '0' , '1' , '2' , '3' , '4' , '5' , '6' , '7', '8' , '9'];
for(i=0;i<c.length;i++)
{
trovato=false;
for(j=0;j<mix.length;j++)
{
if(c.charAt(i)==mix[j])
{
trovato=true;
j=mix.length;//velocizziamo
}
}
if(!trovato)
return "errore3";
}
return "ok";
}
}
/*************************FINE FUNZIONI X IL CF************************/
/***************************FUNZIONI X L'IVA***************************/
function ottieni_iva ()
{
p_iva["piva"] = iva.text;
p_iva.sendAndLoad ("http://127.0.0.1/iva.php",p_iva,"POST");
}
function processa_iva()
{
switch (var_iva)
{
case "errore6":
errore_iva = "errore caricamento";
break;
case "exists":
errore_iva = "p.iva già esistente";
break;
case "errore_query":
errore_iva = "errore query lettura";
break;
case "ok":
dati_utente["iva"] = iva.text;
break;
case undefined:
tutto_ok=false;
break;
default:
tutto_ok=false;
break;
}
if(var_iva!="ok")
tutto_ok=false;
}
function controlla_iva (iv):String
{
if (iv.length == 0)
{
return "errore1";
}
else if (iv.length != 11)
{
return "errore2";
}
else
{
return !isNaN(Number(iv)) ? "ok" : "errore3";
}
}
/**************************FINE FUNZIONI X L'IVA*************************/
/***************************FUNZIONI X L'EMAIL***************************/
function ottieni_email ()
{
e_mail["em"] = email.text;
e_mail.sendAndLoad ("http://127.0.0.1/email.php",e_mail,"POST");
}
function processa_email()
{
switch (var_email)
{
case "errore6":
errore_email = "errore caricamento";
break;
case "exists":
errore_email = "email già esistente";
tutto_ok=false;
break;
case "errore_query":
errore_email = "errore query lettura";
break;
case "ok":
dati_utente["email"] = email.text;
break;
case undefined:
tutto_ok=false;
break;
default:
tutto_ok=false;
break;
}
if(var_email!="ok")
tutto_ok=false;
}
function controlla_email (e):String
{
if (e.length == 0)
return "errore1";
else if (e.length < 7)
return "errore2";
else
{
var trovato_punto:Boolean=false;
var trovato_at:Boolean=false;
for(i=0;i<e.length;i++)
{
if(e.charAt(i)==".")
trovato_punto=true;
if(e.charAt(i)=="@")
trovato_at=true;
}
if((!trovato_punto)||(!trovato_at))
return "errore2";
}
return "ok";
}
/*************************FINE FUNZIONI X L'EMAIL************************/