Premettendo che ho fatto una ricerca nel forum senza trovare risposte al mio problema, vi spiego di cosa si tratta.
Io ho fatto un banalissimo form per l'invio della mail che rimanda ad una pagina asp. Fino a qui nessun problema. Ho inserito una checkbox (usando il componente di flash) e mi recupera tranquillamente i dati però i dati che ricevo hanno un problema ovvero non mi dicono se la checkbox è selezionata ma mi riportano una stringa di questo tipo _level1.contatto.instance244.scelta se selezionata e _level1.contatto.instance219.scelta quando è deselezionata (contatto è l'swf che carico con il form). Sinceramente non capisco come assegnargli un'etichetta comprensibile.....vi posto il codice e confido in voi.
Flash:
codice:/** file allegato al numero 2 di mas2 www.mas2.it */ // memorizziano in una varabile il target var path:MovieClip= this; // l'ogetto LoadVars che farà il send dei dati e riceverà la risposta var sendObject:LoadVars; // la pagina asp dove saranno sendati i dati var pagtosend:String="sendEmail.asp" // le variabili campo di testo: nome, cognome, indirizzo, email e messaggio var nome_txt:TextField; var azienda_txt:TextField; var email_txt:TextField; var indirizzo_txt:TextField; var fax_txt:TextField; var professione_txt:TextField; var telefono_txt:TextField; var note_txt:TextField // il movieclip usato come pulsante per inviare l'email var send_mc:MovieClip; // il movieclip usato come pulsante per cancellare i dati var delete_mc:MovieClip; // all'evento onRelease del pulsante send_mc attivo la funzione che senda l'email send_mc.onRelease=sendEmail // all'evento onRelease attivo la funzione che senda l'email delete_mc.onRelease= resetForm function sendEmail() { // recupero i valori da ogni campo di testo var nnome= nome_txt.text var nazienda= azienda_txt.text; var nemail= email_txt.text; var ninidirizzo= indirizzo_txt.text; var nprofessione= professione_txt.text; var ntelefono= telefono_txt.text; var nfax= fax_txt.text; var nnote= note_txt.text; // creo un'istanza dell'oggetto LoadVars sendObject= new LoadVars(); // memorizzo in alcune proprietà dell'oggetto sendObject i dati che ho recuperato // è importante questo passaggio perchè la pagina asp recuperà i valori // in base a queste proprietà sendObject.nome= nnome sendObject.azienda= nazienda sendObject.inidirizzo= ninidirizzo sendObject.professione= nprofessione sendObject.telefono= ntelefono sendObject.fax= nfax sendObject.email= nemail; sendObject.note= nnote; sendObject.scelta= scelta; sendObject.onLoad= function() { if(this.error=="false") { path.wait.gotoAndStop("responseok"); } else { path.wait.gotoAndStop("noresponse"); } } path.attachMovie("wait", "wait", 1) path.wait._x= 160 path.wait._y= 100; // utilizzo il metodo sendAndLoad per inviare i dati e ricevere una risposta sendObject.sendAndLoad(pagtosend,sendObject,"POST") } function resetForm() { nome_txt.text=""; cognome_txt.text="" email_txt.text=""; note_txt.text=""; indirizzo_txt.text="" }
ASP
Il pulsante ovviamente non ha niente.codice:<%@ Language=VBScript %> <% ' dichiaro alcuni variabili Dim iMsg Dim iConf Dim Flds Dim strTosend Dim strNome Dim strAzienda Dim strProfessione Dim strIndirizzo Dim strTelefono Dim strFax Dim strEmail Dim strNote Dim strMessage Dim strOggetto Dim strScelta ' strTosend è la variabile che memorizza l’email del destinatario (es. email del nostro cliente) strTosend="ruggiu@gmail.com" ' l’oggetto del nostra email strOggetto="Richiesta informazioni" ' recupero il nome dell’utente con Request(nome_proprietà_oggettoflash) strNome=Request("nome") ' recupero la mail strEmail= Request("email") ' recupero la scelta strScelta= Request("scelta") ' recupero le note strNote= Request("note") ' vado a comporre il messaggio che il destinatario riceverà nella sua casella email ' vbcrlf è il carattere speciale che aggiunge un ritorno a capo strMessage=strMessage&"Nome: "&strNome&vbcrlf strMessage=strMessage&"Azienda: "&strAzienda&vbcrlf strMessage=strMessage&"Professione: "&strProfessione&vbcrlf strMessage=strMessage&"Indirizzo: "&strIndirizzo&vbcrlf strMessage=strMessage&"Telefono: "&strTelefono&vbcrlf strMessage=strMessage&"Fax: "&strFax&vbcrlf strMessage=strMessage&"Email: "&strEmail&vbcrlf strMessage=strMessage&"Voglio iscrivermi alla newsletter: "&strScelta&vbcrlf strMessage=strMessage&"Note: "&strNote&vbcrlf ' creo gli oggetti necessari per l’invio dell’email ' queste righe possono cambiare in relazione al provider set iMsg = CreateObject("CDO.Message") set iConf = CreateObject("CDO.Configuration") Set Flds = iConf.Fields Flds("http://schemas.microsoft.com/cdo/configuration/urlgetlatestversion") = True Flds.Update With iMsg Set .Configuration = iConf .To = strTosend .From = strEmail .Subject = strOggetto .TextBody=strMessage .Send End With ' alla fine del send recuperiamo la variabile err.number che identifica un numero di errore ' se esiste un numero di errore vuol dire che err.numer è true quindi c’è stato un errore altrimenti ‘error risulterebbe false if err.number then Response.Write "error=true" else Response.Write "error=false" end if %>
Grazie mille

Rispondi quotando
