Modulo

  • Creatore Discussione Creatore Discussione muscaril
  • Data di inizio Data di inizio

muscaril

Utente Attivo
16 Mar 2009
46
0
6
Ho un problema con il modulo invio, ho un sito costruito in flash, ho rovato su internet un modulo che ho caricato nel mio sito, il file asp è con il linguaggio vecchio che il mio sito non lo gestisce (aruba). mi potete aiutare a modificare il file asp nel novo linguaggio (CDOSYS)??
file asp parte finale
<%
address=request.ServerVariables("REMOTE_ADDR")
nome=request("nome")
cognome=request("cognome")
indirizzo=request("indirizzo")
citta=request("citta")
telefono=request("telefono")
email=request("email")
note=request("note")

%><html><head>
<title>Modulo in Flash ASP</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
body {font: 9pt Verdana,Arial; color: #900; background:#fff}
</style>
</head><body>
<h4>Pagina per l'invio dei dati</h4>
<b>nome</b>: <%=nome%><br>
<b>cognome</b>: <%=cognome%><br>
<b>indirizzo</b>: <%=indirizzo%><br>
<b>citta</b>: <%=citta%><br>
<b>telefono</b>: <%=telefono%><br>
<b>email</b>: <%=email%><br>
<b>note</b>: <%=note%><br><br>

<%
if instr(nome,"@")=0 or instr(email,"@")=0 then
%> Gli indirizzi email non sono corretti... impossibile inviare.<br><%

elseif note="" or about="" then
%> Mancano i contenuti... impossibile inviare.<br><%
else
data=FormatDateTime(Now(),2)
ora=FormatDateTime(Now(),3)

Set myMail=CreateObject("CDONTS.NewMail")
contenuto="<html><body>"
contenuto=contenuto& "<p>"& note &"</p>"
contenuto=contenuto& data &" - "& ora & " - IP address "& address
contenuto=contenuto& "</body></html>"

myMail.Subject=about
myMail.BodyFormat=0
myMail.MailFormat=0
myMail.Body=contenuto
myMail.From=nome
myMail.To=email
myMail.Bcc=nome
myMail.Send

Set myMail=Nothing
%>
Messaggio inviato dall'indirizzo IP <%=address%><br><br>
Il messaggio è stato inviato correttamente!! [<a href="#" onClick="window.print();">Stampa</a>]<br>
<%
end if
%>
</body>
</html>
 
Ho trovato su aruba un modulo che funziona nell'invio, ma ho il problema che non mi invia il capo messaggio
questo è il comando invio.

FOR numeroCampi = 1 TO (Request.Form.Count() - 1)
IF NOT Request.Form(numeroCampi) = "" THEN
corpoMessaggio = corpoMessaggio & vbCrLf & Request.Form.Key(numeroCampi) & " = " & Trim(Request.Form(numeroCampi))
END IF
NEXT
dove si trova il problema???
l'altro problema e che quando mi arriva l'email mi da altri errori :

FUIComponentClass = [type Function]
FSelectableListClass = [type Function]
FScrollBarClass = [type Function]
FScrollSelectListClass = [type Function]
FSelectableItemClass = [type Function]
FComboBoxClass = [type Function]
FComboBoxItemClass = [type Function]

Come posso risolvere questi problemi ???
 
CorpoMessaggio viene codificati tutti i campi che vegono esposti nel sito nome, indirizzo, email e il campo messaggio dove questo nell'invio non mi viene inviato, questo è tutto lo script, dove è sbagliato per non inviarmi il campo messaggi:


DIM corpoMessaggio, numeroCampi, invioA, invioDa, nomeDominio, indirizzoIp, modulo, browserSistemaOperativo

'* voce da modificare con il proprio indirizzo email

invioA = "indirizzo@sito.it"

'* voce da modificare con un indirizzo email che funga da mittente:
'* in caso di errore riceverete notifica a questo indirizzo un MAILER-DAEMON
'* dato che cdosys supporta questa notifica

invioDa = "indirizzo@sito.it"

'------------fine modifiche necessarie------------------

nomeDominio = Request.ServerVariables("HTTP_HOST")
indirizzoIp = Request.ServerVariables("REMOTE_ADDR")
modulo = Request.ServerVariables("HTTP_REFERER")
browserSistemaOperativo = Request.ServerVariables("HTTP_USER_AGENT")

'*rilevo i campi del form

FOR numeroCampi = 1 TO (Request.Form.Count() - 1)
IF NOT Request.Form(numeroCampi) = "" THEN
corpoMessaggio = corpoMessaggio & vbCrLf & Request.Form.Key(numeroCampi) & " = " & Trim(Request.Form(numeroCampi))
END IF
NEXT

'* creo gli oggetti cdosys sul server e li gestisco

DIM iMsg, Flds, iConf

Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
Set Flds = iConf.Fields

Flds(cdoSendUsingMethod) = cdoSendUsingPort
Flds(cdoSMTPServer) = "smtp.aruba.it"
Flds(cdoSMTPServerPort) = 25
Flds(cdoSMTPAuthenticate) = cdoAnonymous ' 0
Flds.Update

With iMsg
Set .Configuration = iConf
.To = invioA
.From = Request.Form("email")
.Sender = invioDa
.Subject = "Contatto dal dominio " & nomeDominio
.TextBody = "Questi i dati inseriti nel modulo presente alla pagina " & modulo & " da utente con indirizzo IP " & indirizzoIp & " browser e sistema operativo " & browserSistemaOperativo & vbCrLf & corpoMessaggio & ""
.Send
End With
%>
<script>
document.location.replace('grazie.asp');
</script>
 
Senti, fammi capire una cosa: sbaglio o il tuo problema è innanzitutto che il server non ti invia l'email?

Se è cosi, perchè non provi a fare una paginetta di test (con dati statici) per sincerarti che l'invio della mail vada a buon fine?

Una volta appurato e sistemato questo, usi lo scriptino funzionante per l'invio della mail per farci tutti i giochini che vuoi.
 
Questo è modulo che mi funziona, il probema è che il campo messaggio non me lo invia, mentre tutti gli altri campi mi arrivano perfettamente nella email impostata.
Il primo modulo postato non funzionava in quanto il server di aruba non gestische il programma CDONTS.
 

Discussioni simili