Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2010
    residenza
    Pianeta Terra
    Messaggi
    1,614

    Invia E-mail di Risposta

    Salve

    Come aggiungere al seguente codice un paio di righe (senza cambiare nulla a quest'ultimo), per inviare all'utente una mail di conferma all'suo indirizzo??


    Codice PHP:

    <?php
    $email
    =$_POST['email'];
    $destinatario "prova@dominio.tld";
    $nome_mittente "$email";
    $oggetto_email "formulario";
    $all_free "n";
    $campi_req = array("nome","email","indirizzo","luogo","plz","numero");
    $obbligo_email "y";
    $accetta_condizioni "y";
    $pagina_grazie "risp_form.html";
    $pagina_error_empty "campi_sbagliati_form.html";
    $pagina_error_email "campi_sbagliati_form.html";
    $pagina_error_condizioni "accetta_condizioni.html";
    $pagina_error_referer "campi_sbagliati_form.html";

    //ora e data

    $ora date ("H:i:s"); 
    $data date ("d/m/Y");

    //intestazione email che arriva al destinatario

    $corpo "
    Modulo inviato il 
    $data alle ore $ora
    Riepilogo dati:\n\n"
    ;


    //controllo anti-robo//

    if ($antispam != 'tnterror347876') { die("Sorry, we don't accept Spam !!"); }


    if(!isset(
    $_SERVER) OR !$_SERVER OR !is_array($_SERVER) OR count(array_diff($_SERVER$HTTP_SERVER_VARS))){  
    $_POST = &$HTTP_POST_VARS
    }

    //prende IP ADDRESS

    if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])){
        
        if (
    $_SERVER["HTTP_X_FORWARDED_FOR"] == "") {

    $ipnumb getenv("REMOTE_ADDR");

            }else {

    $ipnumb getenv("HTTP_X_FORWARDED_FOR");

                }

            } else {

    $ipnumb getenv("REMOTE_ADDR");
            }


    //controllo referer

    if(empty($_SERVER["HTTP_REFERER"])){

        
    header ("Location: $pagina_error_referer");
        exit();
        
        }

    ########### CONTROLLO DEI CAMPI ###########

    $control_campi 0;

    if(
    $all_free != "y"){

        foreach(
    $_POST as $key => $valore){

            if(
    in_array($key,$campi_req)){

                if(
    trim($valore) == ""){

                
    $control_campi++;
                
                                        } 

                                    }

                                }

                            } else {

                
    $control_campi 0;    

                                    }                    

    ########### CONTROLLO EMAIL ###########

    $control_email 0;

    if(
    $obbligo_email == "y"){

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

            if(!
    eregi("^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9_-])+.)+[a-z]{2,6}$"$_POST['email'])){

            
    $control_email++;

                                }

                            } else {

            
    $control_email 0;

                                }

                            }

    ########### CONTROLLO CONDIZIONI ###########
    $control_condizioni 0;

    if(
    $accetta_condizioni == "y"){

        if(isset(
    $_POST['trattamento_dati']) && $_POST['trattamento_dati'] == "accetto"){

            
    $control_condizioni 0;

                } else {

            
    $control_condizioni ++;

                }

            }

    ########### INVIO EMAIL ###########

    if($control_campi == 0){

            if(
    $control_email == 0){

                if(
    $control_condizioni == 0){

    foreach(
    $_POST as $key => $valore){

    $key ucfirst(stripslashes(trim($key)));
    $valore stripslashes(trim($valore));
    $key str_replace("_"," ",$key);

                if(
    trim($valore) == ""$valore "Non compilato";
                
                    
    $corpo .= $key .": "$valore ."\n\n";

                }
                
                    
    $corpo .= "Numero IP: $ipnumb"."\n";

    $corpo .= "____________________________________________________________ \n\n

    "
    ;

        
    // invio e-mail
    // Header Mail
    $headmail.="From: $nome_mittente <$nome_mittente>\n";
    $headmail.="Return-Path: $nome_mittente\n";
    $headmail.="User-Agent: Php Mail Function\n";
    $headmail.="X-Accept-Language: en-us, en\n";
    $headmail.="MIME-Version: 1.0\n";
    $headmail.="X-Priority: 1 (Highest)\n";
    $headmail.="Content-Type: text/plain; charset=ISO-8859-1; format=flowed\n";
    $headmail.="Content-Transfer-Encoding: 7bit\n";

    ini_set('sendmail_from'"$destinatario");
    mail("$destinatario""$oggetto_email""$corpo""$headmail");

                    
    header ("Location: $pagina_grazie");

                                    } else {

                    
    header ("Location: $pagina_error_condizioni");

                                }

                            } else {

                    
    header ("Location: $pagina_error_email");

                            }

                        } else {

                        
                    
    header ("Location: $pagina_error_empty");

                        }

    ?>



    Ringrazio in Anticipo delle informazioni datomi

    Saluti
    Per una bella risata vai QUI

  2. #2
    Utente di HTML.it L'avatar di Luke70
    Registrato dal
    Jul 1999
    Messaggi
    767
    Il tuo codice contiene già una parte per l'invio delle e-mail

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2010
    residenza
    Pianeta Terra
    Messaggi
    1,614
    ..salve

    ...e già, lo contiene..forse mi sono spiegato male; ci riprovo:

    quando l'utente invia la mail, mi arriva all'indirizzo pincopallino@blabla.com...

    ora, la questione è la seguente:

    come fare partire una mail di conferma (che risiede sul server), standard per tutti gli utenti, dimodoché gli arriva nell'indirizzo che ha indicato nel form?

    Grazie
    Per una bella risata vai QUI

  4. #4
    Utente di HTML.it L'avatar di Luke70
    Registrato dal
    Jul 1999
    Messaggi
    767
    ripeti il codice da // invio e-mail con $destinatario=mail del utente e $corpo=testo della e-mail di conferma

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2010
    residenza
    Pianeta Terra
    Messaggi
    1,614
    a questo ci ero arrivato, ma non mi viene in mente il come...

    non è necessario il $to +tosto che il $from?

    poi, come inserire il noreply@prova.com ?

    So che è una cosa abbastanza semplice da realizzare (in una 10ina di righe +/-), ma non saprei come

    Mi spiegeresti passo per passo come fare se ti va?

    Grazie
    Per una bella risata vai QUI

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2010
    residenza
    Pianeta Terra
    Messaggi
    1,614
    ...risolto....
    Per una bella risata vai QUI

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.