• Moderatore

    vale ti consiglio di aprire un nuovo topic 🙂


  • User

    Il form mail di Claudioweb mi funziona correttamente.
    Grazie Claudioooooo

    Comunque...
    Quando ricevo l'email al campo mittente mi compare [email protected]

    E' possibile far comparire direttamente l'email che la persona che mi scrive inserisce nel campo mail?

    Poi nel messaggio, se una persona mi scrive delle parole con lettere accentate, nell'email mi compaioni caratteri strani tipo questa lettera Ã


  • User

    non mi risponde nessuno? 😮
    E' un topic ormai morto? :smile5:


  • User Newbie

    Ciao
    H inserito anche io il tuo script su una pagina e funziona, cioè arrivano i dati del modulo al mio indirizzo email.
    Però dopo aver cliccato INVIA sul browser , invede di reindirizzare lla pagina che ho indicato, apapre questo messaggio:

    Warning: Cannot modify header information - headers already sent by (output started at /home2/websites/iplastw3/home/NEWSITE/mail.php:9) in /home2/websites/iplastw3/home/NEWSITE/mail.php on line 28

    Mi sai dire cosa ho sbagliato?
    Grazie mille
    Francesca:o


  • User Attivo

    mi spiace se il link non funziona, non essendo utente premium non posso postare link, in ogni caso potete trovare la discussione nella sezione Flash & Actionscript - FINALMENTE FUNZIONA form in flash con php.

    Si tratta di una vecchia discussione, spero possa ancora far comodo a qualcuno, avevo spiegato un po' tutto il procedimento.


  • User

    Ciao,
    ho un serio problema che mi sta facendo impazzire...
    ho creato una pagina HTML (eintragen.htm) con un modulo da riempire della quale riporto il codice:

    <form name="eintragen" action="mail.php" method="post" enctype="text/plain">
    <table border="0" align="center" cellpadding="5" cellspacing="5">
    <tr>
    <td>Name, Vorname, Firma:</td>
    <td><input type="text" name="name" size="80" maxlength="80" value=""></td>
    </tr><tr>
    <td>Adresse (Postfach):</td><td><input type="text" name="adresse" size="80" maxlength="80" value=""></td>
    </tr><tr>
    <td>PLZ, Ortschaft:</td><td><input type="text" name="ortschaft" size="80" maxlength="80" value=""></td>
    </tr><tr>
    <td>Telefon, Handy:</td><td><input type="text" name="telefon" size="80" maxlength="80" value=""></td>
    </tr><tr>
    <td>Fax:</td><td><input type="text" name="fax" size="80" maxlength="80" value=""></td>
    </tr><tr>
    <td>E-Mail:</td><td><input type="text" name="mail" size="80" maxlength="80" value=""></td>
    </tr><tr>
    </tr><tr>
    <td>Webseite:</td><td><input type="text" name="webseite" size="80" maxlength="80" value=""></td>
    </tr><tr>
    </tr><tr>
    <td>Tätigkeitsbereich / Branche:</td><td><input type="text" name="branche" size="80" maxlength="80" value=""></td>
    </tr><tr>
    <td><p>Ich habe die allgemeinen
    <label>
    <input name="checkbox" type="checkbox" value="checkbox" />
    </label>
    <br />
    Geschäftsbedingungen<br />
    gelesen und akzeptiert (<a href="AGB'sKomunikadoMai10.pdf">AGB</a>)</p>
    </td><td><input type=submit value="Absenden"></td>
    </tr>
    </table>
    <div align="center">
    <p align="center" class="MsoNormal"> </p>
    <p align="center" class="MsoNormal Stile5">© 2010 Kommunikado Ltd.</p>
    </div>
    </form>

    E una mail.php con il seguente codice:

    <?php
    $mailto = "[email protected]";
    $subject = "Eintragen";
    $redirect = "eintragen-ok.htm";

    $messaggio="";
    $messaggio=" Name, Vorname, Firma: ".$_POST[name]."\n Adresse (Postfach): ".$_POST[adresse]."\n PLZ, Ortschaft: ".$_POST[ortschaft]."\n Telefon, Handy: ".$_POST[telefon]."\n Fax: ".$_POST[fax]."\n E-Mail: ".$_POST[mail]."\n Webseite: ".$_POST[webseite]."\n Tätigkeitsbereich / Branche: ".$_POST[branche];

    if (@mail($mailto, $subject, $messaggio)) {
    header("Location: $redirect");
    } else {
    echo('

    Kann nicht gesendet werden. Zurück zur vorherigen Seite und versuchen Sie einmal, danke.</p>');
    }
    ?>

    I problemi che mi si presentano sono i seguenti:

    1. mi arriva l'E-Mail ma mancano le stringhe passate compilando il form, arriva solo in questo modo:

    Name, Vorname, Firma:
    Adresse (Postfach):
    PLZ, Ortschaft:
    Telefon, Handy:
    Fax:
    E-Mail:
    Webseite:
    Tätigkeitsbereich / Branche:

    1. non so come poter usare il checkbox per fare si che l'E-Mail venga inviato solo nel caso questo sia ceccato.

    Potreste gentilmente darmi un aiuto a capire qual'è il problema?

    Vi ringrazio anticipatamente

    Ciao

    Patric


  • User Newbie

    Buongioro,
    Se permette una domanda, io ho seguito la procedura per inserire il modulo per email nel sito , in pratica ho creato i sile e poi ho messo il mio indirizzo e-mail come sotto riportato, cliccando invia sembra che vada e mi riporta nella pagina "index.htm" ma non mi arriva niente nella casella di posta sa dirmi da cosa piu dipendere?

    Grazie

    <?php
    // Inizio Configurazione***
    //Indirizzo emai a cui inviare i msg
    $mailto = "[email protected]";
    //Oggetto della mail
    $subject = "OGGETTO DELLA MAIL";
    //Pagina da mostrare dopo l'invio
    $redirect = "index.htm";
    // 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>');
    }
    ?>


  • User

    Ciao ippocampo77,

    prova a controllare nella casella di spam del tuo Account di posta elettronica.


  • User Newbie

    Si lo avevo gia fatto ma niente..


  • 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>";
    }

    ?>