• User Newbie

    Qualcuno che mi controlla questo form email?

    Ciao a tutti! Sono nuovo nel forum, mi chiamo Riccardo ed ho 21 anni :smile5:

    Nel mio sito non mi funziona più il form per le mail!
    L'ho inserito da poco, ha funzionato per 3-4 volte e poi mi restituisce solo il messaggio d'errore 😢
    Vi posto il tutto

    L'html (integrato nell'index):

    <div class="content style4 featured">
    <div class="container 75%">
    <form name="contactform" method="post" action="mail.php">

    <table width="450px">

    <tr>

    <td valign="top">

    <label for="first_name">Nome *</label>

    </td>

    <td valign="top">

    <input type="text" name="first_name" maxlength="50" size="30">

    </td>

    </tr>

    <tr>

    <td valign="top"">

    <label for="last_name">Cognome *</label>

    </td>

    <td valign="top">

    <input type="text" name="last_name" maxlength="50" size="30">

    </td>

    </tr>

    <tr>

    <td valign="top">

    <label for="email">Email *</label>

    </td>

    <td valign="top">

    <input type="text" name="email" maxlength="80" size="30">

    </td>

    </tr>

    <tr>

    <td valign="top">

    <label for="telephone">Telefono</label>

    </td>

    <td valign="top">

    <input type="text" name="telephone" maxlength="30" size="30">

    </td>

    </tr>

    <tr>

    <td valign="top">

    <label for="comments">Messaggio *</label>

    </td>

    <td valign="top">

    <textarea name="comments" maxlength="1000" cols="25" rows="6"></textarea>

    </td>

    </tr>

    <tr>

    <td colspan="2" style="text-align:center">

    <input type="submit" value="Invia">

    </td>

    </tr>

    </table>

    </form>
    </div>
    </div>
    </form>

    e il php

    <?php

    if(isset($_POST['email'])) {

    // INFO
    
    $email_to = "*******@virgilio.it";
    
    $email_subject = "Modulo contatto tramite email";
    
     
    
     
    
    function died($error) {
    
        // Errori
    
        echo "Sono stati riscontrati degli errori: <br /><br />";
    
        echo $error."<br /><br />";
    
        die();
    
    }
    
     
    
    // validation expected data exists
    
    if(!isset($_POST['first_name']) ||
    
        !isset($_POST['last_name']) ||
    
        !isset($_POST['email']) ||
    
        !isset($_POST['telephone']) ||
    
        !isset($_POST['comments'])) {
    
        died('Sono stati riscontrati degli errori.');       
    
    }
    
     
    
    $first_name = $_POST['first_name']; // obbligatorio
    
    $last_name = $_POST['last_name']; // obbligatorio
    
    $email_from = $_POST['email']; // obbligatorio
    
    $telephone = $_POST['telephone']; // non obbligatorio
    
    $comments = $_POST['comments']; // obbligatorio
    
     
    
    $error_message = "";
    
    $email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
    

    if(!preg_match($email_exp,$email_from)) {

    $error_message .= 'Indirizzo email non valido.<br />';
    

    }

    $string_exp = "/^[A-Za-z .'-]+$/";
    

    if(!preg_match($string_exp,$first_name)) {

    $error_message .= 'Nome inserito non valido.<br />';
    

    }

    if(!preg_match($string_exp,$last_name)) {

    $error_message .= 'Cognome inserito non valido.<br />';
    

    }

    if(strlen($comments) < 2) {

    $error_message .= 'Il messaggio inserito non è valido.<br />';
    

    }

    if(strlen($error_message) > 0) {

    died($error_message);
    

    }

    $email_message = "Dettagli del modulo.\n\n";
    
     
    
    function clean_string($string) {
    
      $bad = array("content-type","bcc:","to:","cc:","href");
    
      return str_replace($bad,"",$string);
    
    }
    
     
    
    $email_message .= "Nome: ".clean_string($first_name)."\n";
    
    $email_message .= "Cognome: ".clean_string($last_name)."\n";
    
    $email_message .= "Email: ".clean_string($email_from)."\n";
    
    $email_message .= "Telefono: ".clean_string($telephone)."\n";
    
    $email_message .= "Messaggio: ".clean_string($comments)."\n";
    

    // email headers

    $headers = 'Da: '.$email_from."\r\n".

    'Rispondi a: '.$email_from."\r\n" .

    'X-Mailer: PHP/' . phpversion();

    if(mail($email_to, $email_subject, $email_message, $headers)) { // SE L'INOLTRO È ANDATO A BUON FINE...

    echo "La mail è stata inoltrata con successo.";

    } else {// ALTRIMENTI...

    echo "Si sono verificati dei problemi nell'invio della mail.";

    }

    ?>
    <?php

    }

    ?>

    Grazie a chiunque mi possa aiutare :ciauz:


  • User Attivo

    Ciao ti consiglio un ottimo strumento di creazione moduli email personalizzati online con download codice sorgente:
    Fantasticformbuilder.it
    Spero ti sia utile !