Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Captcha e Cdosys

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    162

    Captcha e Cdosys

    Ho tentato di inserire, attraverso gli esempi trovati sul forum, il codice Captcha in un modulo per l'invio di una e-mail.

    C'è una pagina form.asp e un'altra processform.asp

    Le due pagine funzionavano perfettamente ma da quando alla seconda ho inserito il componente Cdosys, si è verificato il problema. L'email viene inviata a prescindere se inserisco il codice Captcha o no.
    Sicuramente Cdosys va inserito come parte di codice in processform.asp e sarà soggetto a condizione ma, non essendo esperto di programmazione chiedevo un vostro aiuto.

    Questa e la pagina di prova:

    form.asp



    il codice di processform.asp è il seguente:

    <%@LANGUAGE="VBSCRIPT" CODEPAGE="1254"%>
    <%
    Function CheckCAPTCHA(valCAPTCHA)
    SessionCAPTCHA = Trim(Session("CAPTCHA"))
    Session("CAPTCHA") = vbNullString
    if Len(SessionCAPTCHA) < 1 then
    CheckCAPTCHA = False
    exit function
    end if
    if CStr(SessionCAPTCHA) = CStr(valCAPTCHA) then
    CheckCAPTCHA = True
    else
    CheckCAPTCHA = False
    end if
    End Function

    strCAPTCHA = Trim(Request.Form("strCAPTCHA"))

    if CheckCAPTCHA(strCAPTCHA) = true then

    response.write "OK"
    else
    response.write "KO"
    end if
    %>





    <%


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

    '* voce da modificare con il proprio indirizzo email

    invioA = "info@sitodiproova.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 = "info@sitodiproova.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>
    Chi gode un pò non tribola sempre.

  2. #2
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    cosi a occhio, senza provare, al posto di response.write "OK" metti il codice che invia la mail...

    e al posto di response.write "KO" metti un messaggio di errore.
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    162
    Anche io immaginavo una cosa simile, ci ho provato ma non funziona. Sicuramente al posto di response.write devo inserire un'altra funzione ma non so quale !!!!

    Questa è la parte di codice che dovrei modificare:

    if CheckCAPTCHA(strCAPTCHA) = true then

    response.write "OK"
    else
    response.write "KO"
    end if
    %>
    Chi gode un pò non tribola sempre.

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    162
    Chiedevo semplicemente quale fosse la sintassi corretta per inserire il componente cdosys
    Chi gode un pò non tribola sempre.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.