Ciao a tutti! Mi servirebbe una mano con un contact form che ho realizzato..
Il form è così strutturato:
HTML
Che "risponde" a questo JS:codice:<div class="contact-formMOD"> <form method="post" id="modulo"> <div id="rispostaMOD"> </div> <p class="formacontattoMOD">Il tuo Nome:</p> <input type="text" name="nomeMOD" id="nomeMOD" value="" /> <p class="formacontattoMOD">La tua E-mail:</p> <input type="email" name="email" id="emailMOD" value="" /> <p class="formacontattoMOD">Telefono:</p> <input type="text" name="telefono" id="telefonoMOD" value="" /> <p class="formacontattoMOD">Fai la tua scelta:</p> <fieldset> <select name="scelte"> <option value="Choice 1" selected="selected">Choice 1</option> <option value="Choice 2">Choice 2</option> <option value="Altro">Altro (Specificare)</option> </select> </fieldset><br /> <p class="formacontattoMOD">Scegli il pacchetto:</p> <fieldset> <select name="grandezza"> <option value="Small" selected="selected">Small</option> <option value="Large">Large</option> <option value="Extralarge"></option> </select> </fieldset><br /> <p class="formacontattoMOD">Oggetto:</p> <input type="text" name="oggetto" id="oggettoMOD" value="" /> <p class="formacontattoMOD">Scrivi qui il Testo:</p> <textarea name="messaggio" id="messaggioMOD"></textarea> <input type="submit" name="invia" id="inviare" value="Invia" /> </form> </div>
legato a questo PHP:codice:$(function(){ $("#inviare").click(function(){ //Recupero tutte le variabili var valid = '', isr = ' è richiesto.</p>', name = $("#nomeMOD").val(), mail = $("#emailMOD").val(), subject = $("#oggettoMOD").val(), telefono = $("#telefonoMOD").val(), messaggio = $("#messaggioMOD").val(); // Controllo variabili if (name.length<1){ valid += '<p>Un nome valido'+isr;} if (!mail.match(/^([a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4}$)/i)){ valid += '<p>Un indirizzo e-mail valido'+isr; } // non vengono superati, appare il messaggio di errore. if (valid!=''){ $("#rispostaMOD").fadeIn("slow"); $("#rispostaMOD").html("<p><b>Errore:</b></p>"+valid); $("#rispostaMOD").css("background-color","#faffbd"); } //Se i controlli vengono superati, compare messaggio di invio in corso else { var datastr ='name=' + name + '&mail=' + mail + '&subject=' + subject + '&telefono=' + telefono + '&messaggio=' + encodeURIComponent(messaggio); $("#rispostaMOD").css("display", "block"); $("#rispostaMOD").css("background-color","#faffbd"); $("#rispostaMOD").html("<p>Invio del messaggio in corso..</p>"); $("#rispostaMOD").fadeIn("slow"); setTimeout(send(datastr),2000); } return false; }); //Funzione di invio affidata a "mail.php". function send(datastr){ $.ajax({ type: "POST", url: "js/modulo.php", data: datastr, cache: false, success: function(html){ $("#rispostaMOD").fadeIn("slow"); $("#rispostaMOD").html(html); $("#rispostaMOD").css("background-color","#e1ffc0"); setTimeout('$("#rispostaMOD").fadeOut("slow")',2000); console.log("Mandato "+datastr); } })}; });
Volevo sapere perché funziona tutto tranne i menu a tendina? per di più vorrei un consiglio su come impostare il menu a tendina "grandezza" propedeutico all'invio del form.codice:<?php//Recuperiamo tutte le variabili $mail = $_POST['mail']; $name = $_POST['name']; $subject = $_POST['subject']; $telefono = $_POST['telefono']; $text = $_POST['messaggio']; $ip = $_SERVER['REMOTE_ADDR']; //Qui andrà inserito il tuo indirizzo e-mail $to = "mail@gmail.com"; //Creazione del mesaggio da inviare $message = "Hai ricevuto una e-mail da: ".$name.", ".$mail.", ".$telefono.".<br />"; $message .= "Messaggio: <br />".$text."<br /><br />"; $message .= "IP: ".$ip."<br />"; $headers = "From: $mail \n"; $headers .= "Reply-To: $mail \n"; $headers .= "MIME-Version: 1.0 \n"; $headers .= "Content-Type: text/html; charset=ISO-8859-1 \n"; //Se l'e-mail viene spedita correttamente, compare un messaggio di avvenuto invio if(mail($to, $subject,$message, $headers)){ echo "<p>Messaggio inviato con successo</p>"; } //Altrimenti un messaggio di errore else{ echo "<p>Ci sono stati degli errori nell'invio della e-mail.</p>"; } ?>
Grazie a tutti..


Rispondi quotando
impostare come?
