• User

    Problema con Form per invio e-mail

    Salve io ho creato una pagina in html chiamata contattami.html

    Al suo interno ho messo:

    <form id="form2" method="post" action="send.php" name="contattami">
                                <div class="container">
                                <div class="column1">
                                  <blockquote>
                                    <blockquote>
                                      <p align="left"><strong>Nome e Cognome:      </strong> 
                                        <input type="text" name="nome" size="30" />
                                        <br />
                                        <br />
                                        <strong>Indirizzo e-mail:                                    </strong>
                                        <input type="text" name="email" size="30">
                                        <br />
                                        <br />
                                        <strong>Telefono:                                    </strong>
                                        <input type="text" name="telefono" size="30" />
                                      
                                    </blockquote>
                                  </blockquote>
                                  </div>
                                        <div class="column2">
                                        <strong>Testo del messaggio:                                    </strong>
                                        <textarea rows="10" cols="30" name="messaggio">
                                        </textarea>                                    
                                        <br />
                                        <div class="alignright" style="margin-right:7px; padding-bottom:10px;"> <a href="send.php" onclick="document.getElementById('form2').submit()"><input type="submit" value="Invia" /></a> &nbsp;<input type="reset" value="Cancella" /></div>
                                      </p>
                                    
                                  </div>
                                        <div class="clear"></div>
                                  </div>
                                  
                              </form>
    ```Creata pagina send.php è messo questo nel body:
    
    

    <?PHP
    // Processo di recupero dei dati
    $nome = $_POST['nome'];
    $email = $_POST['email'];
    $telefono = $_POST['telefono'];
    $messaggio = nl2br($_POST['messaggio']);
    // Processo di controllo [Opzionale]
    if ($nome == null)
    {
    print "Errore: è necessario compilare il campo 'Nome e cognome'";
    }
    else
    {
    if ($email == null)
    {
    print "Errore: è necessario compilare il campo 'Indirizzo e-mail'";
    }
    else
    {
    if ($telefono == null)
    {
    print "Errore: è necessario compilare il campo 'Telefono'";
    }
    else
    {
    if ($messaggio == null)
    {
    print "Errore: è necessario compilare il campo 'Messaggio'";
    }
    else
    {
    // Processo di configurazione dell'email
    // [Destinatario, mittente, ecc]
    $mail_to = "miaemail";
    $mail_from = $email;
    $mail_subject = "Contatto dal web da parte di $nome $email";
    $mail_body = $_POST['body'];
    // Intestazioni HTML
    $mail_in_html = "MIME-Version: 1.0\r\n";
    $mail_in_html .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $mail_in_html .= "From: <$mail_from>";
    // Processo di invio
    if (mail($mail_to, $mail_subject, $mail_body, $mail_in_html))
    {
    print "Email inviata con successo!";
    }
    else
    {
    print "Errore";
    }
    }
    }
    }
    }
    ?>

    Mi da questo errore:
    
    "; // Processo di invio if (mail($mail_to, $mail_subject, $mail_body, $mail_in_html)) { print "Email inviata con successo!"; } else { print "Errore"; } } } } } ?> 
    
    Che faccio? dove sbaglio?

  • User

    Se lo faccio partire da xampp quando provo a inviare l'email mi dice che devo inserire il campo nome e cognome, ma il realtà io lo inserisco...


  • User Attivo

    Ricorda, crea sempre uno script ordinato!
    Io tenterei di modificarlo così:
    [PHP]<?PHP
    // Processo di recupero dei dati
    $nome = $_POST['nome'];
    $email = $_POST['email'];
    $telefono = $_POST['telefono'];
    $messaggio = nl2br($_POST['messaggio']);
    // Processo di controllo [Opzionale]
    if(empty($nome))die ("Errore: è necessario compilare il campo 'Nome e cognome'");
    if(empty($email))die ("Errore: è necessario compilare il campo 'Indirizzo e-mail'");
    if(empty($telefono))die( "Errore: è necessario compilare il campo 'Telefono'");
    if(empty($messaggio))die("Errore: è necessario compilare il campo 'Messaggio'");
    // Processo di configurazione dell'email
    // [Destinatario, mittente, ecc]
    $mail_to = "miaemail";
    $mail_from = $email;
    $mail_subject = "Contatto dal web da parte di $nome $email";
    $mail_body = $_POST['body'];
    // Intestazioni HTML
    $mail_in_html = "MIME-Version: 1.0\r\n";
    $mail_in_html .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $mail_in_html .= "From: <$mail_from>";
    // Processo di invio
    if (!mail($mail_to, $mail_subject, $mail_body, $mail_in_html))die("Errore!");
    echo "Email inviata con successo!";
    ?>[/PHP]
    E comunque, ricorda che...

    // Processo di controllo [Opzionale]
    La sicurezza non è mai troppa ed un controllo di sicurezza è il minimo che si possa fare!;);)
    Ciao!;)