• User Newbie

    Niente io ho fatto altre prove ma non mi arrivano le email anche se non da nesun errore.....


  • User

    Salve,

    avrei un errore nel mio modulo email, funziona tutto ok. Tranne che per una cosa: nella mail (es. gmail) appare "\r\n" al posto dell'a capo e riga vuota. Perchè?

    Il codice che utilizzo è:

    [php]<?php
    //la funzione date("H:i:s", mktime(date("H"),date("i, s, m, d, Y"))) restituisce l'ora locale
    $ora=date("H:i:s", mktime(date("H"),date("i, s, m, d, Y")));

    $data =(date("d-m-y"));

    if(get_magic_quotes_gpc()){
    $ora=stripslashes($ora);
    $data=stripslashes($data);
    $nome=stripslashes($nome);
    $email=stripslashes($email);
    $sitoweb=stripslashes($sitoweb);
    $messaggio=stripslashes($messaggio);
    }
    $ora=mysql_real_escape_string($ora);
    $data=mysql_real_escape_string($data);
    $nome=mysql_real_escape_string($nome);
    $email=mysql_real_escape_string($email);
    $sitoweb=mysql_real_escape_string($sitoweb);
    $messaggio=mysql_real_escape_string($messaggio);

    if($sitoweb=="Nessun sito web inserito"){
    $sitoweb="(hai scelto di non inserire un sito web)";
    }

    $messaggioutente="Congratulazioni: sergiopinna.it ha ricevuto correttamente il suo messaggio!"."<br />"."La presente è una copia del messaggio pervenutaci."."<br />"."<small>"."(email di risposta automatica: non è necessario rispondere)"."</small>"."<br /><br />";
    $messaggioutente=$messaggioutente."I dati da lei inseriti sono:"."<br />";
    $messaggioutente=$messaggioutente."<span style="font-weight:bold;">il giorno</span>: ".$data."<br />";
    $messaggioutente=$messaggioutente."<span style="font-weight:bold;">alle</span>: ".$ora."<br />";
    $messaggioutente=$messaggioutente."<span style="font-weight:bold;">si è presentata come</span>: ".$nome."<br />";
    $messaggioutente=$messaggioutente."<span style="font-weight:bold;">inserendo l'indirizzo email</span>: ".$email."<br />";
    $messaggioutente=$messaggioutente."<span style="font-weight:bold;">ed il sito web</span>: ".$sitoweb."<br />";
    $messaggioutente=$messaggioutente."<span style="font-weight:bold;">il testo del suo messaggio è stato</span>: ".$messaggio;

    $headers=array();
    $headers[]='MIME-Version: 1.0';
    $headers[]='Content-type: text/html; charset=UTF-8';
    $headers[]='Content-Transfer-Encoding: 7bit';
    $headers[]='From: '. $nome;

    if(!empty($ora)&&!empty($data)&&!empty($nome)&&!empty($email)&&!empty($sitoweb)&&!empty($messaggio)){
    mail($email, "sergiopinna.it ha ricevuto il tuo messaggio", $messaggioutente, join("\r\n", $headers));
    }

    header( "location: contacts.php?okmessaggio=true");
    exit(0);
    ?>[/php]e come output ho:
    [INDENT]ora: 23:41:04
    data: 28-09-10
    nome: Mario Rossi
    email: [email protected]
    sito web: Nessun sito web inserito
    messaggio: Grande Sergio!!! Hai fatto un gran bel sito internet!!\r\nA presto\r\nMario
    [/INDENT]Come vedete appare \r\n: perchè?


  • User

    Salve ragazzi,

    Rimetto in vita questo thread perchè avrei bisogno del vostro aiuto\supporto per la creazione di un form per l'invio di e-mail direttamente dal mio sito internet.

    Ho letto più volte questa discussione e implementato il codice suggerito nel 1° post, ma non riesco a venir comunque a capo del problema.

    Sul mio sito, che per questioni di regolamento mi sa che non posso linkarvi (anche se sto effettuando i test in una cartella a se stante prima di metterli direttamente nelle pagine html che mi interessano) ho provato diverse soluzioni ma nessuna ha dato frutti.

    Provo a spiegarvi in maniera chiara i miei procedimenti sperando che voi, sicuramente più pratici in materie, riusciate a darmi una mano.

    Tutti i tentativi hanno una base comune: Un file .html in cui inserisco il form fra i tag body e in un div che ne da la forma, e un file .php dove metto direttamente il codice php suggerito. Entrambi i file sono nella stessa root.

    Test 1:

    Form nel file html

    <div id="formposta">
    <form method="post" action="send.php" name="modulo">
    Nome e cognome:
    <input type="text" name="nome" size="30">
    Indirizzo e-mail:
    <input type="text" name="email" size="30">

    Testo del messaggio:
    <textarea rows="10" cols="30" name="messaggio">
    </textarea>
    <input type="submit" value="Invia">
    <input type="reset" value="Cancella">
    </form>
    </div>
    File php associato: send.php, contenuto:

    <?PHP
    // Processo di recupero dei dati
    $nome = $_POST['nome'];
    $email = $_POST['email'];
    $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 ($messaggio == null)
    {
    print "Errore: è necessario compilare il campo 'Messaggio'";
    }
    else
    {
    // Processo di configurazione dell'email
    // [Destinatario, mittente, ecc]
    $mail_to = "lamiamail";
    $mail_from = $email;
    $mail_subject = "Contatto dal sito web da parte di $nome";
    $mail_body = "<p><font color=#000000>$messaggio</font></p>";
    // Intestazioni HTML
    $mail_in_html = "MIME-Version: 1.0";
    $mail_in_html .= "Content-type: text/html; charset=iso-8859-1";
    $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";
    }
    }
    }
    }
    ?>
    Dopo avermi dato l'errore per l'invio della mail mi esce questa stringa:
    *ErrorePHP Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing in C:\WebSites\miosito.com\mytest\send.php on line 36

    • Test 2: ( suggeimento di ludus in prima pagina)Form nell'html:

    <form method="post" action="send2.php">
    <input type="hidden" name="require" value="email,nome_e_cognome">
    <input type="hidden" name="contenitore" value="[email protected]">
    <input type="hidden" name="invia_Dati" value="REMOTE_HOST,HTTP_USER_AGENT">
    </form>
    File php associato send2.php:

    <?
    ##############################
    if (!ini_get('register_globals')) {
    $superglobals = array($_SERVER, $_ENV, $_FILES, $_COOKIE, $_POST, $_GET);
    if (isset($_SESSION)) {
    array_unshift($superglobals, $_SESSION);
    }
    foreach ($superglobals as $superglobal) {
    extract($superglobal, EXTR_SKIP);
    }
    }
    ##############################
    /*
    formail completo, è possibile aggiungere qualunque campo
    è sufficiente inserire le due pagine in un punto qualunque
    del proprio dominio.
    by linkbruttocane
    */

    //INIZIO PARAMETRI DA SETTARE OBBLIGATORIAMENTE
    /****************************************************************************************/
    // Il parametro $delay indica i secondi di ritardo impiegati
    // a riportare l'utente all'home page dopo che abbia
    // compilato correttamente il modulo

    $delay = "3";

    // Il parametro $url indica la pagina alla quale si viene
    // rimandati una volta compilato correttamente il modulo
    // io ho messo una homepage, ma potrebbe essere qualunque altra pagina

    $url = "miositolink";

    // Il parametro $provenienza indica le possibili provenienze dei dati: indicare
    // il proprio dominio nella forma mostrata dall'esempio

    $provenienza = array ('miosito','miosito');

    // Il parametro $esclusioni vi permette di NON consentire
    // messaggi da un indirizzo mail specificato
    // sia appartenente ad un dominio, ovvero
    // 'tutte le mail che appartengono ad un dominio'
    // od anche a singoli account

    $esclusioni = array ('*@quellochetipare.com', '[email protected]', '[email protected]');

    //FINE PARAMETRI DA SETTARE OBBLIGATORIAMENTE
    /****************************************************************************************/

    $versione_form = "stabile";

    function print_error($reason,$type = 0) {
    global $versione_form;
    build_body($title, $bgcolor, $text_color, $link_color, $vlink_color, $alink_color, $style_sheet);
    if ($type == "missing") {
    ?>

    <body bgcolor='#ffffff'>
    <p align='center'><font face='Verdana, Arial' color='#000000' size='2'>Il modulo non è
    stato inviato per le seguenti ragioni</font></p>

    <p align='center'><font face='Verdana, Arial' size='2' color='#000000'>
    <?
    echo $reason."\n";
    ?>
    </font>
    <p align='center'><font face='Verdana, Arial' size='2' color='#000000'>Premere indietro
    nel browser e riprovare.</font></p><?
    } else { // every other error
    ?>
    Il modulo non è stato inviato per le seguenti ragioni:<p align='center'>
    <?
    }
    echo "

    \n";

    exit;
    }

    function check_banlist($esclusioni, $email) {
    if (count($esclusioni)) {
    $allow = true;
    foreach($esclusioni as $banned) {
    $temp = explode("@", $banned);
    if ($temp[0] == "*") {
    $temp2 = explode("@", $email);
    if (trim(strtolower($temp2[1])) == trim(strtolower($temp[1])))
    $allow = false;
    } else {
    if (trim(strtolower($email)) == trim(strtolower($banned)))
    $allow = false;
    }
    }
    }
    if (!$allow) {
    print_error("Stai usando un indirizzo email escluso.");
    }
    }

    function check_referer($provenienza) {
    if (count($provenienza)) {
    $found = false;
    $temp = explode("/",getenv("HTTP_REFERER"));
    $referer = $temp[2];
    for ($x=0; $x < count($provenienza); $x++) {
    if (eregi ($provenienza[$x], $referer)) {
    $found = true;
    }
    }
    if (!getenv("HTTP_REFERER"))
    $found = false;
    if (!$found){
    print_error("Provieni da un dominio non autorizzato.");
    error_log("[FormMail.php] Illegal Referer. (".getenv("HTTP_REFERER").")", 0);
    }
    return $found;
    } else {
    return true; //
    }
    }
    if ($provenienza)
    check_referer($provenienza);

    if ($esclusioni)
    check_banlist($esclusioni, $email);

    function parse_form($array) {
    // build reserved keyword array
    $reserved_keys[] = "required";
    $reserved_keys[] = "redirect";
    $reserved_keys[] = "email";
    $reserved_keys[] = "require";
    $reserved_keys[] = "contenitore";
    $reserved_keys[] = "titolo";
    $reserved_keys[] = "bgcolor";
    $reserved_keys[] = "text_color";
    $reserved_keys[] = "link_color";
    $reserved_keys[] = "vlink_color";
    $reserved_keys[] = "alink_color";
    $reserved_keys[] = "title";
    $reserved_keys[] = "missing_fields_redirect";
    $reserved_keys[] = "invia_Dati";
    if (count($array)) {
    while (list($key, $val) = each($array)) {

         $reserved_violation = 0;
         for ($ri=0; $ri<count($reserved_keys); $ri++) {
            if ($key == $reserved_keys[$ri]) {
               $reserved_violation = 1;
            }
         }
      
         if ($reserved_violation != 1) {
            if (is_array($val)) {
               for ($z=0;$z<count($val);$z++) {
                  $content .= "$key: $val[$z]\n";
               }
            } else {
               $content .= "$key: $val\n";
            }
         }
      }
    

    }
    return $content;
    }

    function mail_it($content, $titolo, $email, $contenitore) {
    mail($contenitore, $titolo, $content, "From: $email\r\nReply-To: $email\r\nX-Mailer: DT_formmail");
    }

    function build_body($title, $bgcolor, $text_color, $link_color, $vlink_color, $alink_color, $style_sheet) {
    if ($style_sheet)
    echo "<LINK rel=STYLESHEET href="$style_sheet" Type="text/css">\n";
    if ($title)
    echo "<title>$title</title>\n";
    if (!$bgcolor)
    $bgcolor = "#ffffff";
    if (!$text_color)
    $text_color = "#80000";
    if (!$link_color)
    $link_color = "#0066cc";
    if (!$vlink_color)
    $vlink_color = "#0066cc";
    if (!$alink_color)
    $alink_color = "#cc3300";
    if ($background)
    $background = "background="$background"";
    echo "<body bgcolor="$bgcolor" text="$text_color" link="$link_color" vlink="$vlink_color" alink="$alink_color" $background>\n\n";
    }

    $contenitore_finale = split(',',$contenitore);
    for ($i=0;$i<count($contenitore_finale);$i++) {
    $contenitore_to_test = trim($contenitore_finale*);
    if (!eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$", $contenitore_to_test)) {
    print_error("Occorre un indirizzo email valido per continuare ($contenitore_to_test) ");
    }
    }

    if ($required)
    $require = $required;

    if ($require) {

    $require = ereg_replace( " +", "", $require);
    $required = split(",",$require);
    for ($i=0;$i<count($required);$i++) {
    $string = trim($required*);

      if((!(${$string})) || (!(${$string}))) {
       
         if ($missing_fields_redirect) {
            header ("Location: $missing_fields_redirect");
            exit;
         }
         $require;
         $missing_field_list .= "Non trovato: $required*
    

    \n";
    }
    }

    if ($missing_field_list)
    print_error($missing_field_list,"missing");
    }

    if (($email) || ($EMAIL)) {
    $email = trim($email);
    if ($EMAIL)
    $email = trim($EMAIL);
    if (!eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$", $email)) {
    print_error("il suo indirizzo email non è valido");
    }
    $EMAIL = $email;
    }

    $content = parse_form($HTTP_POST_VARS);

    if ($invia_Dati) {
    $invia_Dati = ereg_replace( " +", "", $invia_Dati);
    $splitta_Dati = split(",",$invia_Dati);
    $content .= "\n------ variabili utente ------\n";
    for ($i=0;$i<count($splitta_Dati);$i++) {
    $string = trim($splitta_Dati*);
    if ($splitta_Dati* == "REMOTE_HOST")
    $content .= "REMOTE HOST: ".$REMOTE_HOST."\n";
    else if ($splitta_Dati* == "REMOTE_USER")
    $content .= "REMOTE USER: ". $REMOTE_USER."\n";
    else if ($splitta_Dati* == "REMOTE_ADDR")
    $content .= "REMOTE ADDR: ". $REMOTE_ADDR."\n";
    else if ($splitta_Dati* == "HTTP_USER_AGENT")
    $content .= "BROWSER: ". $HTTP_USER_AGENT."\n";
    }
    }

    if (!$titolo)
    $titolo = "DanieleImperi.it - Contatti dal sito";

    mail_it(stripslashes($content), stripslashes($titolo), $email, $contenitore);

    if ($redirect) {
    header ("Location: $redirect");
    exit;
    } else {
    print "<body background='img/bg3.gif' bgcolor='#ffffff' style='margin:20'>

    <table width='70%' height='247' align='center' cellpadding='10' cellspacing='0' bgcolor='#FFFFFF'>
    <tr>
    <td valign='top'>
    <table width='100%' height='247' border='1' bordercolor='#cccccc' bgcolor='#FFFFFF' cellpadding='4' cellspacing='0'>
    <tr>
    <td><div align='center'><font face='Verdana, Arial, Helvetica, sans-serif'>
    Grazie per avermi contattato!</font></div>
    <div align='center'><font face='Verdana, Arial, Helvetica, sans-serif'>Sarete
    contattati

        appena possibile all'indirizzo da voi inserito
    
        $email</font></div>
    

    <div align='center'>

        <font color='#999999' size='2' face='Verdana, Arial, Helvetica, sans-serif'>...Ritorno 
        automatico alla Home page in corso.... </font></div></td>
    <meta  http-equiv='refresh' content='$delay;  url=$url'>
    

    </tr>
    </table>
    </td>
    </tr>
    </table>

    </body>
    ";
    echo "

    \n";

    exit;
    }

    // <---------- fine ----------> //
    ?>
    Qui non sono riuscito nemmeno ad inserire l'indirizzo e-mail a quale inviare il messaggio, inoltre la pagina html mi compare totalmente bianca e non si vede nulla.

    Test 3 (form suggerito da claudioweb)

    Form nell'html:

    <form name="form1" id="form1" method="post" action="mail.php">
    Nome</p><input type="text" name="nome" />
    </p>Cognome</p><input type="text" name="cognome" />
    </p>Email</p><input type="text" name="email" />
    </p>Contenuto</p><textarea name="contenuto" cols="50" rows="10"></textarea>
    </p><input name="Invia" type="submit" value="Invia" />
    </p>
    </form>
    codice nel file mail.php

    <?php
    // Inizio Configurazione***
    //Indirizzo emai a cui inviare i msg
    $mailto = "mail a cui inviare";
    //Oggetto della mail
    $subject = "email dal sito miosito";
    //Pagina da mostrare dopo l'invio
    $redirect = "urlmiosito";
    // Fine Configurazione****

    foreach($HTTP_POST_VARS as $key => $value) {

    $message .= $key . ': ' . $value;
    $message .= "\n";

    }
    if (@mail($mailto, $subject, $message)) {

    header("Location: $redirect");
    } else {
    // Messaggio in caso di errore
    echo('

    Impossibile inviare. Torna nella pagina precedente e prova ancora, grazie.</p>');
    }
    ?>
    In questo terzo tentativo, qualsiasi sia il modo in cui compili il form, corretto o meno, mi esce sempre la scritta: "Impossibile inviare. Torna nella pagina precedente e prova ancora, grazie."

    Ora, il mio desiderio agli albori era quello di creare un form sicuro, per evitare spam ecc, ma arrivato a questo punto, dopo tutti questi tentativi, mi basterebbe solo creare un form funzionante, e che dia la conferma all'utente dell'avvenuto invio o meno con il redirect automatico ad una pagina da me scelta.

    Sembrava facile, viste le molteplici proposte sui vari siti internet, tutte basate su un semplice "copia e incolla" ma non lo è stato.
    Mi metto pertanto nelle vostre mani e chiedo il vostro supporto.

    Scusate per la lunghezza del post, è tutto dovuto al quote dei file 😞


  • User

    Uso da tempo questo form mail è funziona correttamente, ma quando mi arriva l'email, nel campo mittente appare [email protected] invece dell'email della persona che mi scrive.

    So che dovrei aggiungere questo codice al file mail.php
    $header = ?from: $nome \n?;

    ma non so dove inserirlo.

    Qualcuno potrebbe aiutarmi?


  • User Newbie

    salve a tutti!! ho letto un pò velocemente questo post...e volevo chiedervi se posso applicare il file mail.php al mio template:
    è il flash as2,c'è un file txt dove posso modificare alcuni parametri del sito,ma nella sezione email mi ritrovo scritto```

    &mail_file=mail.php&
    , il file mail.php non è compreso nel template,ma aprendo il file FLA l'action layer del form ha questo codice:
    function ckform()
    {
    apos = t2.htmlText.indexOf("@");
    dotpos = t2.htmlText.lastIndexOf(".");
    pos = dotpos - apos;
    if (pos > 1)
    {
    tmp = 1;
    } // end if
    if (pos < 2)
    {
    tmp = 0;
    } // end if
    trace (tmp);
    txt2.htmlText = "";
    if (t1.htmlText == "")
    {
    txt2.htmlText = "NAME IS REQUIRED.";
    }
    else if (t2.htmlText == "")
    {
    txt2.htmlText = "";
    txt2.htmlText = "E-MAIL IS REQUIRED.";
    }
    else if (tmp == 0)
    {
    txt2.htmlText = "";
    txt2.htmlText = "WRONG E-MAIL.";
    }
    else if (t3.htmlText == "")
    {
    txt2.htmlText = "";
    txt2.htmlText = "TELEPHONE IS REQUIRED.";
    }
    else if (t4.htmlText == "")
    {
    txt2.htmlText = "";
    txt2.htmlText = "MESSAGE IS REQUIRED.";
    }
    else
    {
    this.loadVariables(_root.mail_file, "POST");
    } // end else if
    } // End of the function
    function ckfull(textObj)
    {
    TextInfo = "EXIT FULL-SCREEN MODE (ESC) TO ENTER TEXT";
    if (Stage["displayState"] == "normal")
    {
    textObj.htmlText = "";
    } // end if
    if (Stage["displayState"] == "fullScreen")
    {
    textObj.htmlText = TextInfo;
    } // end if
    } // End of the function
    this.onEnterFrame = function ()
    {
    this.ckfull(this.txt1);
    };

    t1.tabIndex = 1;
    t2.tabIndex = 2;
    t3.tabIndex = 3;
    t4.tabIndex = 4;

    cosa posso fare?

  • User Newbie

    Ciao a tutti sono nuovo del forum! volevo chiederti come mai il form contatto mi da problemi, mi viene detto che c'è un errore alla linea 12 ovvero

    foreach($HTTP_POST_VARS as $key => $value) {

    non ne capisco molto di php, e non riesco a trovare l'errore, le $subject e $object le ho lasciate così come erano...

    Datemi una manooo:bigsmile:


  • User Newbie

    Ciao anch'io ho seguito le tue istruzioni ma testando l'invio dei dati mi compare una pagina bianca con il seguente messaggio d'errore:

    PHP Parse errore: errore di sintassi, inaspettata '&', aspettando '(' in 😄 \ WebSites \ Professione-parquet.it_gsetbr1wfn6kuyuz \ mail.php on line 12


  • User Newbie

    Salve a tutti,vorrei proporvi anche io il mio piccolo problemino con un modulo per invio mail che
    ho da qualche annetto sul mio sito.
    Oggi pero ho fatto caso che il modulo funziona si....ma per qualche strana ragione la mail che mi torna si visualizza cosi:

    Contenuto del modulo:

    Nome:
    Cognome:
    Città :
    Oggetto:
    Testo: sdssdssdsdsdddsdsdsd
    E-Mail:

    torna solo il testo scritto nel box "testo"
    e gli altri box tornano vuoti.
    qualcuno saprebbe spiegarmi il perchè di questa cosa?
    Premetto che questo form lo misi qualche annetto fa,ma quando lo inserii funzionava tutto a dovere!


  • User Newbie

    Salve,
    ho istallato questo semplice modulo all'interno di un sito creato con FrontPage 2003, ma compilando e premendo invio da sempre questo errore:
    **Parse error: syntax error, unexpected '&', expecting '(' in **D:\inetpub\webs\elettrovintageit\mail.php on line **12

    ******Potete aiutarmi ????
    Grazie Fabio

    @claudioweb said:

    Ciao benvenuto 🙂

    Ottima la soluzione di Ludus 😉

    comnque per fare una cosa proprio semplice:

    salva questo codice in una pagina chiamata mail.php (o un altro nome da te scelto, l'importante poi è cambiare nell'altro codice il nome)

    ><?php
    // ************Inizio Configurazione***************
    //Indirizzo emai a cui inviare i msg
    $mailto = "TUO_INDIRIZZO";
    //Oggetto della mail
    $subject = "OGGETTO DELLA MAIL";
    //Pagina da mostrare dopo l'invio
    $redirect = "URL_PAGINA";
    // ************Fine Configurazione****************
    
    
    foreach($HTTP_POST_VARS as $key => $value) {
    
    $message .= $key . ': ' . $value;
    $message .= "\n";
    
    }
    if (@mail($mailto, $subject, $message)) {
    
    header("Location: $redirect");
    } else {
    // Messaggio in caso di errore
    echo('
    
    Impossibile inviare. Torna nella pagina precedente e prova ancora, grazie.</p>');
    }
    ?> 
    >```
    
    Nella pagina dove vuoi inserire il modulo dei contatti metti questo:
    
            <form name="form1" id="form1" method="post" action="mail.php">
    

    Nome</p>

                    <input type="text" name="nome" />
                </p>
    

    Cognome</p>

                    <input type="text" name="cognome" />
                </p>
    

    Email</p>

                    <input type="text" name="email" />
                </p>
    

    Contenuto</p>

                    <textarea name="contenuto" cols="50" rows="10"></textarea>
                </p>
                
    
    
                    <input name="Invia" type="submit" value="Invia" />
                </p>
            </form>
    

    è molto semplice (forse troppo), ma puoi anche aggiungere altri campi senza grossi problemi.

    Sposto la discussione in php, che è la sezione più adatta 😉


  • User Newbie

    Buongiorno a tutti

    Mi aggrego alla discussione nella speranza di capire perché il form php che sto cercando d'implementare al mio sito web non ha intenzione di funzionare.
    Sto provando da ore a capire dove sia l'errore ma non riesco proprio a trovarlo.

    Grazie in anticipo a chiunque sia in grado di darmi una mano

    **HTML
    **

    <div class="col-sm-8 contact-form">
    <?php include('semail.php'); ?>
    <form action="" method="post" class="form" role="form">

                <div class="row">
                    <div class="col-xs-6 col-md-6 form-group">
                        <input class="form-control" type="text" id="name" name="name" placeholder="Nome"  required="" autofocus=""></input>
                    </div>
                    <div class="col-xs-6 col-md-6 form-group">
                        <input class="form-control" type="text" id="email" name="email" placeholder="Email"  required=""></input>
                    </div>
                </div>
                
                <textarea class="form-control" id="message" name="message" placeholder="Scrivi qui la tua richiesta" rows="5"></textarea>
                <br>
                
                <div class="row">
                    <div class="col-xs-12 col-md-12 form-group">
                        <button class="btn btn-primary pull-right" type="submit">Invia</button>
                    </div>
                    
                </div></form>
            </div>    
    

    **PHP

    **>

    <?php
    //Controllo dati
    $error= "";

    if(isset($_POST['name']) and $_POST['name'] != ""){//
    $nome= strip_tags($_POST['name']);
    }
    elseif(isset($_POST['name'])){
    $error .= "Nome mancante.<br />";
    }

    if(isset($POST['mail']) and preg_match('/^[a-z0-9&'.-+]+@[a-z0-9-]+.([a-z0-9-]+.)*+[a-z]{2}/is', $_POST['mail'])){//
    $mail = $_POST['mail'];
    }
    elseif(isset($_POST['mail'])){
    $error .= "Email mancante o non valida.<br />";
    }

    if(isset($_POST['message']) and $_POST['message'] != ""){//
    $messaggio = strip_tags($_POST['message']);
    }
    elseif(isset($_POST['message'])){
    $error .= "Inserire un messaggio.<br/>";
    }
    //Invio mail
    if(isset($nome,$mail,$messaggio)){
    $destinatario = "[email protected]";//
    $intestazione = "From: ".$mail."\r\n";
    $messaggio .= "\n\nMittente: ".$nome."\nEmail: ".$mail."";

    mail($destinatario, $messaggio, $intestazione);
     
    echo "<p class='success'>Messaggio inviato con successo!</p>";
    

    }
    else{
    echo "<p class='error'>".$error."</p>";
    }

    ?>