13 messaggi dal 22 dicembre 2013
Anche se la pagina è in HTML?
11.886 messaggi dal 09 febbraio 2002
Contributi
Ti basta rinominarla in .asp e ovviamente aggiornare i link del tuo sito che puntano a quella pagina.

Immagino che comunque tu abbia del codice che invia la mail. Quello devi spostarlo nella pagina stessa che contiene il form, nel punto in cui ti avevo indicato.

ciao

Enjoy learning and just keep making
13 messaggi dal 22 dicembre 2013
Ho seguito passo per passo le tue indicazioni, il Captcha alla fine del form appare, ma anche se metto un codice errato il modulo parte lo stesso.
E nel "testo richiesta" dove io ho solo scritto "prova modulo"
del modulo appare questo:
TestoRichiesta: prova modulo
recaptcha_challenge_field: 03AHJ_VusuajcgMgM6Z-aRU4aNvjo6AB6DY-7FLAlu4rgItJtb1HpZ3eKNIuG6ua_pwU9TojHe55CeHZRbrarjdGFHiC3mT2KrPJjsRs4A2VrtBKWxlHf-2Z9VPEDGb6PjBxR6WLAs2RfkkGvJJrjpaPSxb642B-Jlft3_QKKEfIQWEKybihcrktA
recaptcha_response_field: 192968532488
InviaForm: Invia >>
11.886 messaggi dal 09 febbraio 2002
Contributi
weryus ha scritto:

se metto un codice errato il modulo parte lo stesso.

E' corretto che il modulo parta lo stesso, perché la verifica del captcha avverrà solo lato server. L'importante è che non venga spedita la mail. Come abbiamo detto, il codice dell'invio della mail deve stare nel punto in cui era il commento <!-- The solution was correct -->.

Se il codice è errato, la pagina si ricaricherà e informerà l'utente che deve riprovare di nuovo.

Mi ero dimenticato di fare una puntualizzazione sul tuo form
<form method="post" action="formInvio.php">

L'action deve ora essere la pagina stessa. Ad esempio, se il tuo form si trova nella pagina contatti.asp, allora l'action dovrà essere contatti.asp.
Questo vuol dire che il codice di invio della mail deve trovarsi dentro contatti.asp oppure puoi includere la funzione per l'invio da un altro file .asp con la solita direttiva include.

Vedo che ora usi un modulo php, utilizza quello asp fornito da Aruba.
http://vademecum.aruba.it/start/contatto/modulo_cdosys.asp

weryus ha scritto:

E nel "testo richiesta" dove io ho solo scritto "prova modulo"
del modulo appare questo:

Purtroppo non sono sicuro da cosa dipenda. Può darsi che dopo varie modifiche ci siano degli errori nel codice HTML, tipo tag o attributi non chiusi. Sottoponi il codice HTML prodotto dalla tua pagina al validatore WC3, magari ti evidenzia degli errori di sintassi.
http://validator.w3.org/

ciao,
Moreno
Modificato da BrightSoul il 31 dicembre 2013 09.49 -

Enjoy learning and just keep making
13 messaggi dal 22 dicembre 2013
Mi ero dimenticato di fare una puntualizzazione sul tuo form
<form method="post" action="formInvio.php">

Ok fatto.

L'action deve ora essere la pagina stessa. Ad esempio, se il tuo form si trova nella pagina contatti.asp, allora l'action dovrà essere contatti.asp.

Fatto anche questo, ora se metto un codice Captcha errato mi riporta sulla stessa pagina facendomi visualizzare il messaggio personalizzato di errore.

Se metto il codice corretto esce correttamente nella stessa pagina il messaggio di invio avvenuto.

Ma c'è un problema, le mail non arrivano!
11.886 messaggi dal 09 febbraio 2002
Contributi
ciao e Buon Anno!

weryus ha scritto:

Ma c'è un problema, le mail non arrivano!

ok, dai, siamo vicini alla soluzione.

Direi che hai installato il codice di reCaptcha correttamente, quindi possiamo chiudere questa parentesi. Il fatto che le email non arrivino dipende unicamente dal codice Vbscript che stai usando per spedire l'email.

Per capire dove si trova il problema, metti quel pezzo di codice in una nuova pagina asp, in modo che puoi testarlo singorlarmente, senza esser costretto ad inserire captcha e compilare form.
Mettilo ad esempio in una nuova pagina chiamata testemail.asp e poi visitala dal tuo browser: l'email viene inviata correttamente? Quali errori si verificano?
Quando hai corretto gli eventuali problemi, copia il codice ed incollalo dentro la pagina del form, nel punto che ti avevo indicato (cioè nei pressi del messaggio di invio avvenuto).
Infine, testa il form per verificare che l'email a questo punto parta e poi elimina la pagina temporanea testemail.asp che avevi creato a scopo di testing.

ciao,
Moreno
Modificato da BrightSoul il 01 gennaio 2014 17.20 -

Enjoy learning and just keep making
13 messaggi dal 22 dicembre 2013
E qui nascono i problemi, allora attualmente con le modifiche che ho fatto il codice del modulo è il seguente:

<div align="left">
<div align="left">
<form method="post" action="indexprova.asp">
<input type="hidden" name="require" value="email,nome"/>
<input type="hidden" name="contenitore" value="info@miamail.it"/>
<input type="hidden" name="invia_Dati" value="REMOTE_HOST,HTTP_USER_AGENT"/>
<table width="100%" cellspacing="2" cellpadding="2">
<tr>
<td width="42%" class="text"><div align="right" class="text">
<div align="left">Nome e Cognome*</div>
</div></td>
<td colspan="2" class="text"><font face="Arial" size="3" color="#993300">
<input type="text" name="nome" />
</font></td>
</tr>
<tr>
<td class="Stile5"><div align="right" class="text Stile6">
<div align="left">E-mail*</div>
</div></td>
<td colspan="2" class="text"><font face="Arial" size="3" color="#993300">
<input type="text" name="email"/>
</font></td>
</tr>
<tr>
<td class="Stile5"><div align="left"><span class="text Stile6">Oggetto </span></div></td>
<td colspan="2" class="text"><font face="Verdana">
<input name="Oggetto" type="text" class="campimodulo" id="Oggetto" />
</font></td>
</tr>
<tr>
<td class="Stile5"><div align="right" class="text Stile6">
<div align="left">Testo richiesta* </div>
</div></td>
<td colspan="2" class="text"><font face="Verdana">
<textarea name="TestoRichiesta" cols="21" rows="4" class="campimodulo"></textarea>
</font></td>
</tr>
<tr>
<td colspan="3" class="Stile5"><%=recaptcha_challenge_writer()%>&nbsp;</td>
</tr>

<tr>
<td colspan="2" class="general"><div align="right">
<input name="InviaForm" type="submit" class="tastomodulo" onclick="MM_validateForm('TestoRichiesta','','R');return document.MM_returnValue" value="Invia &gt;&gt;" />
</div></td>
<td width="51%" class="general"><span class="text"><font face="Verdana">
<input name="CancellaForm" type="reset" class="tastomodulo" value="Cancella" />
</font></span></td>
</tr>
</table>
</form>
<p><% else %>
<!-- The solution was correct -->
Ti ringraziamo per averci scritto
<%end if%>&nbsp;</p>
</div>
</div>
13 messaggi dal 22 dicembre 2013
precedentemente una volta che il visitatore cliccaca su invio si rimandava direttamente al codice di questa pagina formcdosys.asp e quindi sulla mia mail arrivava il modulo compilato. Ed ora?

<!--METADATA TYPE="typelib" UUID="CD000000-8B95-11D1-82DB-00C04FB1625D" NAME="CDO for Windows 2000 Type Library" -->
<!--METADATA TYPE="typelib" UUID="00000205-0000-0010-8000-00AA006D2EA4" NAME="ADODB Type Library" -->
<%

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

'* voce da modificare con il proprio indirizzo email

invioA = "noreply@miamail.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 = "noreply@miamail.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 sito " & 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>

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.