Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it L'avatar di Jigen
    Registrato dal
    Feb 2006
    Messaggi
    547

    Form mail con risposta automatica

    Salve a tutti,

    lo script di seguito riportato consente l'invio di mail direttamente dal modulo contatti di un sito web. Vorrei che questo form mail inviasse, in maniera automatica, all'utente/mittente una mail nella quale lo si ringrazia per aver contattato gli "uffici".

    Come poter ottenere questo risultato?


    Grazie.


    codice:
    <?php
    function rimuovi_BLF($testo) {
    	$expr = array("/\n/","/\r/" );
    	$testo = preg_replace($expr, "xxLFxx", $testo);
    	$testo = str_replace("xxLFxxxxLFxx", "xxLFxx", $testo);
    	$testo = preg_replace("/xxLFxx/", "\r\n", $testo);
    	return $testo;
    }
    
    //varie info per email
    $oggi = date("j F Y G:i");
    $sito = "Impresa di Costruzioni";
    $ip = "$_SERVER[REMOTE_ADDR]";
    $browser = "$_SERVER[HTTP_USER_AGENT]";
    $to = "info@patrizicostruzioni.it";
    $soggetto = "E-mail dal Sito Internet: $sito";
    
    if(trim($_POST['nome']) == "" OR trim($_POST['email']) == "" OR trim($_POST['oggetto']) == "" OR trim($_POST['messaggio']) == "") {
    echo "<font color=\"#FF0000\" face=\"verdana\" size=\"2\"><center>Tutti i campi sono obbligatori</center></font>";
    
    } else {
    
    $body = "Modulo inviato il $oggi da $ip - $browser \n\n";
    $body .= "Nome: ".$_POST['nome']." \n Email: ".$_POST['email']." \n Oggetto: ".$_POST['oggetto']." \n Messaggio: ".$_POST['messaggio'];
    $mittente = $_POST['email'];
    $ownermail = "From: $mittente\n"; 
    
    //aggiunta rimozione bare line feed
    $to = rimuovi_BLF($to);
    $soggetto = rimuovi_BLF($soggetto);
    $body = rimuovi_BLF($body);
    $ownermail = rimuovi_BLF($ownermail);
    
    mail("$to","$soggetto","$body","$ownermail"); 
    
    ?>
    
    <?php
    }
    ?>

  2. #2
    Utente di HTML.it L'avatar di Jigen
    Registrato dal
    Feb 2006
    Messaggi
    547
    Chiedo scusa ai moderatori e agli utenti, ho palesemente sbagliato sezione.

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    no problem, sposto

  4. #4
    Utente di HTML.it L'avatar di Jigen
    Registrato dal
    Feb 2006
    Messaggi
    547
    Qualcuno può aiutarmi?

  5. #5
    Utente di HTML.it L'avatar di Jigen
    Registrato dal
    Feb 2006
    Messaggi
    547
    Qualcuno sa darmi indicazioni?

    Grazie.

  6. #6
    Utente di HTML.it L'avatar di Jigen
    Registrato dal
    Feb 2006
    Messaggi
    547
    Rinnovo la mia richiesta.

  7. #7

    re...

    Be', non dovrebbe essere cosi' complicato...

    Nel tuo codice, vedo una !bella! variabile di nome $mittente, nella quale e' localizzato l'indirizzo email che viene fornito dall'utente/mittente...

    Allora puoi utilizzare una nuova funzione "mail" gia' preparata per quanto riguarda il body e la subject, solo che la variabile $to (destinatario della mail di ringraziamento) sarà uguale proprio a $mittente

    $to = $mittente;
    $subject = "Grazie";
    $body = "Ti ringraziamo per aver partecipato al nostro bla bla bla...";
    mail ("$to","$subject","$body");

  8. #8
    Utente di HTML.it L'avatar di Jigen
    Registrato dal
    Feb 2006
    Messaggi
    547
    Grazie beta_persei per il tuo aiuto, dopo 2 giorni di attesa finalmente qualcuno ha risposto al mio thread.

    La nuova variabile da aprire può essere collocata in qualsiasi punto del codice?

    Grazie ancora.

  9. #9
    Utente di HTML.it L'avatar di Jigen
    Registrato dal
    Feb 2006
    Messaggi
    547
    Alla domanda espressa nel mio ultimo post non è più necessario rispondere, ho risolto!

    Provando il tuo codice ho riscontrato alcuni problemi:

    - il campo "body" relativo al messaggio da inviare all'utente/mittente va in conflitto con il body relativo al messaggio che riceve il destinatario;

    - le e-mail non vengono spedite all'indirizzo del destinatario in quanto i campi "to" si trovano probabilmente anch'essi in conflitto.


    Sto facendo alcuni tentativi sperando di poter risolvere da solo, nel frattempo lascio il problema anche a voi.

    Grazie.

  10. #10
    ma... potresti cambiare nome alle variabili se vanno in conflitto, come prima cosa.
    Altrimenti potresti fare un header che punta ad una nuova pagina (per esempio grazie.php)

    header("Location: grazie.php");

    nella quale porti la variabile $mittente che avevi nella pagina precedente e crei due variabili $subject e $body che conterranno i valori di ringraziamento...

    poi mail("$to","$subject","$body");

    dovrebbe funzionare...

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 © 2025 vBulletin Solutions, Inc. All rights reserved.