buongiorno a tutti...

premetto che non solo ho cercato, ma anche provato i vari esempi di checkbox in giro per il forum e in internet senza successo. Ho il problema di aggiungere dei checkbox multipli ed inviarli tramite formmail. Il formmail mi funziona perfettamente, ma non riesco in nessun modo a capire se il check è spuntato oppure no.
Ho dato un istanza a tutti i check. vi mando il codice su flash e il php con la speranza che qualcuno mi riesca ad aiutare

il link della pagina è il seguente: http://www.mbcimmobiliare.it/MBCpages/consulenza.html


codice su flash per il form perfettamente funzionante


// porto a zero la visibilità degli avvisi
errore_invio._alpha = 0;
errore_server._alpha = 0;
errore_mail._alpha = 0;
notifica_inviato._alpha = 0;
// creo una funzione per il fadeIn/fadeOut degli avvisi
MovieClip.prototype.fadeAlpha = function(to:Number) {
var t:Object = new mx.transitions.Tween(this, "_alpha", mx.transitions.easing.None.easeNone, this._alpha, to, 1, true);
t.path = this;
t.onMotionFinished = function() {
this.path.onFadeDone();
};
};
// creo una funzione che verifica che il campo richiamato sia stato riempito e non contenga spazi vuoti
var validate = function (mail_field:String):Boolean {
var temp = this[mail_field].text.split(" ").join("");
var r:Boolean = (temp.length<=0) ? false : true;
return r;
};
// creo la funzione di verifica peha(0);
clearInterval(intv);
}, 1000);
};
errore_mail.fadeAlpha(100);
break;
}
};
// creo un array che mi contenga tutti i nomi dei campi di testo che intendo inviare via mail
var campi:Array = new Array("nome", "mail", "messaggio", "mutuo");
// e un altro array che contiene i nomi dei campi obbligatori
var campiObbligatori:Array = new Array("nome", "mail", "messaggio");
// entrambi gli array appena creati devono essere riproposti in php secondo le istruzioni del file PHP
//
// restringo l'immissione di caratteri nel campo mail a quelli necessari
this["mail"].restrict = "^ ";
// attivo il TAB per i campi
for (var i = 0; i<campi.length; i++) {
var l:Number = i+1;
this[campi[i]].tabIndex = l;
}
// attivo l'invio della mail sul pulsante "invia_form"
invia_form.onRelease = function() {
// creo il LoadVars per la comunicazione con il file PHP
var lv_sendMail:LoadVars = new LoadVars();
// avvio un ciclo che mi verifica se i campi obbligatori sono riempiti
// in caso positivo invia i dati al file PHP
// in caso negativo attiva l'alert_report -> case 1
for (var m = 0; m<campi.length; m++) {
if (campiObbligatori.toString().indexOf(campi[m])>=0) {
if (validate(campi[m])) {
if (campi[m] != "mail") {
lv_sendMail[campi[m]] = this._parent[campi[m]].text;
} else {
if (checkMail(this._parent, campi[m])) {
lv_sendMail[campi[m]] = this._parent[campi[m]].text;
} else {
alert_report(3);
break;
}
}
} else {
alert_report(1);
break;
}
} else {
lv_sendMail[campi[m]] = this._parent[campi[m]].text;
}
// alla fine delle verifiche, se è tutto apposto, invio i dati
if (m>=campi.length-1) {
lv_sendMail.sendAndLoad("sendmail.php", r il campo mail
var checkMail:Function = function (target:MovieClip, nameField:String):Boolean {
var temp:String = target[nameField].text;
temp = temp.split(" ").join("");
if (temp.length>0) {
if (temp.lastIndexOf("@")>-1) {
var temp2 = temp.split("@");
if (temp2[1].length>5) {
var temp3 = temp2[1].split(".");
if (temp3[0].length>2 && temp3[1].length>1) {
return (true);
}
return (false);
}
return (false);
}
return (false);
}
return (false);
};
// creo una funzione che viene richiamata al tentativo di invio
var alert_report:Function = function (c:Number) {
switch (c) {
//
// case 0 -> il primo caso viene richiamato se l'invio è avvenuto correttamente
case 0 :
notifica_inviato.onFadeDone = function() {
this.onFadeDone = undefined;
var intv = setInterval(function () {
notifica_inviato.fadeAlpha(0);
clearInterval(intv);
}, 1000);
};
notifica_inviato.fadeAlpha(100);
break;
//
// case 1 -> il secondo caso viene richiamato se i campi obbligatori non sono stati compilati
case 1 :
errore_invio.onFadeDone = function() {
this.onFadeDone = undefined;
var intv = setInterval(function () {
errore_invio.fadeAlpha(0);
clearInterval(intv);
}, 1000);
};
errore_invio.fadeAlpha(100);
break;
//
// case 2 -> il terzo caso viene richiamato se il server non risponde o se la mail non viene inviata correttamente
case 2 :
errore_server.onFadeDone = function() {
this.onFadeDone = undefined;
var intv = setInterval(function () {
errore_server.fadeAlpha(0);
clearInterval(intv);
}, 1000);
};
errore_server.fadeAlpha(100);
break;
case 3 :
errore_mail.onFadeDone = function() {
this.onFadeDone = undefined;
var intv = setInterval(function () {
errore_mail.fadeAlplv_sendMail, "POST");
}
// compilo l'evento onLoad della classe LoadVars che mi verifica se l'invio è andato a buon fine o meno
// nel caso sia stata inviata attiva l'alert_report -> case 0
// altrimenti attiva l'alert_report -> case 2 (errore del server)
lv_sendMail.onLoad = function(ok) {
if (ok) {
if (this.report == "OK") {
alert_report(0);
reset_form.onRelease();
} else {
alert_report(2);
}
} else {
}
alert_report(2);
} this._parent[campi[r]].text = "";
}
};

};
};
// il tasto "reset_form" si occupa di svuotare i campi del form
reset_form.onRelease = function() {
for (var r = 0; r<campi.length; r++) {




codice php


<?
if(!empty($_POST)){
// valori da modificare
$address = "xxxxxxxx@gmail.com"; // inserire qui tra le "" la mail a cui va inviato il messaggio
$site = "http://www.mbcimmobiliare.it"; // facoltativo, potete inserire qui il nome del sito
$object = "Invio mail dal sito $site"; // oggetto
//
// i valori dei due array che seguono vanno modificati in base a quelli presenti negli array con lo stesso nome, nello script di flash
$campi = array("nome", "mail", "messaggio");
$campiObbligatori = array("nome", "mail", "messaggio");
//
// non modificare lo script al di sotto di questa riga
//---------------------------------------------------------------//
$body = "";
$headers = "";
$o = (object) '';
$s = implode(",", $campiObbligatori);
foreach($campi as $value) {
$o->$value = (isset($_POST[$value])) ? $_POST[$value] : NULL;
}
foreach($campi as $value){
if(substr_count($s, $value) > 0 && is_null($o->$value)){
echo "&report=KO&";
break;
} else {
if(!is_null($o->mail) && $o->$value == $o->mail){
$headers.= "From: <".$o->mail.">";
}
$body.= $value.": ".$o->$value."\r\n";
if($value == $campi[count($campi)-1]) {
if(!mail($address, $object, $body, $headers)) die("&report=KO&");
else echo "&report=OK&";
}
}
}
}
?>





grazie a chi mi aiuta