Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Form mail in un sito web

    Spero di essere nella sezione giusta..

    Premetto che non ho grande confidenza con questo linguaggio..

    Ho un form per l'invio di mail sul sito di questo tipo:

    <form id="contact-form" name="contact-form" method="post" action="invio.asp">
    <input
    type="text" name="emailname" placeholder="Name" class="email-name field"/>
    <input
    type="email" name="emailaddress" placeholder="Email" class="email-address field"/>
    <textarea
    class="textarea email-message" name="emailmessage" placeholder="Message"></textarea>
    <div
    class="g-recaptcha" data-sitekey="miocodice"></div>
    <input
    type="submit" class="contact-submit" value="Invia" onclick="sendMail()"/>
    </form>


    L'invio porta a invio.asp così scritto:

    <%
    Dim objMail, objConfig

    Set objMail = Server.CreateObject("CDO.Message")
    Set objConfig = Server.CreateObject ("CDO.Configuration")

    With objConfig

    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.aruba.it"
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
    .Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
    .Fields.Update

    End With

    Set objMail.Configuration = objConfig

    objMail.From = Request.Form("emailaddress")
    objMail.To = "MIAMAIL"
    objMail.Subject = Request.Form("emailname")
    objMail.HTMLBody = Request.Form("emailmessage")

    objMail.Send()

    Set objMail = Nothing

    Response.Write("Email inviata correttamente " &_
    "all'indirizzo " &_
    Request.Form("email"))
    %>


    ..e funziona perfettamente!
    Ma così facendo non posso fare le verifiche sulla mail, la verifica sul g-recaptcha che ho in js ed inoltre alla fine dell'invio mi manda su una nuova pagina con la scritta "Email inviata correttamente" mentre vorrei finire con un pop-up!

    La funzioni js (compresa la sendmail che però non funzionava) che avevo erano queste:

    function validateEmail(email) {
    var re = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
    return re.test(email);
    }

    function successPopUp() {
    tl.to('.popup-wrapper', .5, {autoAlpha: 1, display: 'block', ease: Linear.easeNone});
    $('.popup-title').text("Grazie per averci contattato.");
    $('.popup-content').text("Il tuo messaggio è stato inviato correttamente, tutte le informazioni ricevute rimarranno strettamente riservate. Vi contatteremo non appena ricevuto il vostro messaggio.");
    }

    function invalidPopUp() {
    tl.to('.popup-wrapper', .5, {autoAlpha: 1, display: 'block', ease: Linear.easeNone});
    $('.popup-title').text("Errore!");
    $('.popup-content').text("Compila i campi richiesti.");
    }

    function invalidEmailPopUp() {
    tl.to('.popup-wrapper', .5, {autoAlpha: 1, display: 'block', ease: Linear.easeNone});
    $('.popup-title').text("Errore!");
    $('.popup-content').text("Inserisci un indirizzo e-mail valido.");
    }

    function invalidCaptchaPopUp() {
    tl.to('.popup-wrapper', .5, {autoAlpha: 1, display: 'block', ease: Linear.easeNone});
    $('.popup-title').text("Errore!");
    $('.popup-content').text("Effettua il CAPTCHA test.");
    }

    function sendMail() {
    var emailName = $('.emailname');
    var emailAddress = $('.emailaddress');
    var emailMessage = $('.emailmessage');
    var recaptcha = $('#g-recaptcha-response');

    var htmlMessage = '<p>name: ' + emailName.val() + '</p>' + '<p>' + emailMessage.val() + '</p>';

    if (emailName.val() == "" || emailMessage.val() == "") {
    invalidPopUp();
    }
    else if (!validateEmail(emailAddress.val())) {
    invalidEmailPopUp();
    }
    else if (recaptcha.val() == "") {
    invalidCaptchaPopUp();
    }
    else {
    $.ajax({
    type: "POST",
    url: "mandrill-recaptcha-integration/sendmail.php",
    data: {
    'from': emailAddress.val(),
    'message': htmlMessage,
    'g-recaptcha-response': recaptcha.val()
    }
    }).done(function (msg) {
    var msgJson = JSON.parse(msg);
    console.log(msgJson);
    if (msgJson.success == "true") {
    successPopUp();
    }
    else {
    invalidCaptchaPopUp();
    }
    });
    }
    }


    Come posso "unire" le due cose? Oppure come posso fare funzionare la funzione sendmail, cosa c'è di sbagliato?

    Grazie, Matteo.

  2. #2
    Nessuno ha qualche idea? :/

Tag per questa discussione

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 © 2024 vBulletin Solutions, Inc. All rights reserved.