invio smtp con phpmailer - problema invia due volte la email allo stesso utente

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
Salve, come in seguito vi posto il codice che ho scritto tramite un tutorial.

In pratica mi invia il reply sia a me e all'altra persona.



Una cosa importante per voi.. uso le variabile per l'username e la password e questi dati stanno in un altro file.

Ecco il codice:
PHP:
<?php
session_start();
include('inc.php');
include("classs/class.layout.php");
$layout = new Layout;
include("include/functions.php");
$title = "Contatti";
$layout->setTitle($title);
include("include/inc.browser.php");
include("include/inc.ipinfo.php");

?>
<?php
echo "<div id=\"f\"> <!-- Inizio f -->\n";
echo "<div id=\"pages\"><!-- Inizio Pages -->\n";
?>
<h1 class="title_page">Contatti</h1>
<div id="contact">
<fieldset>
<?php
if(isset($_POST["invia"]))
{
	$nome = $_POST["nome"];
	$cognome = $_POST["cognome"];
	$oggetto = $_POST["oggetto"];
	$messaggio =$_POST["messaggio"];
	$email = $_POST["email"];
 
	if(empty($nome))
	{
	$error = "Non hai inserito il nome";
	}
	elseif(empty($cognome))
	{
	$error = "Non hai inserito il cognome";
	}
	elseif(empty($oggetto))
	{
	$error = "Non hai inserito l'oggetto";
	}
	elseif(empty($email))
	{
	$error = "Inserire il l'email";
	}
	elseif(!valid_email($email))
	{
	$error = "Inserire la tua email valida";
	}
	
	elseif(empty($messaggio))
	{
	$error = "Non hai inserito il messaggio";
	}
	else
	
	{
	if ($_SESSION['codice']==$_POST['codice'])
	{
		require("classs/class.phpmailer.php");
		require("classs/class.smtp.php");
		
		$mail = new PHPMailer();

		$mail->IsSMTP(); 
		
		// L'host remoto con cui spediremo, nel caso di gmail è smtp.gmail.com

		$mail->Host = $admin_email_host;

		$mail->SMTPAuth = true;
		
	
		
		// Inseriamo i dati della casella che utilizzeremo per spedire

		$mail->Username = $admin_email_username;

		$mail->Password = $admin_email_password;

		$mail->From = $_POST["email"];

		$mail->FromName = $_POST["nome"]." ".$_POST["cognome"];

		// Qui inseriamo l'indirizzo a cui recapitare le email spedite tramite il form
		
		$mail->AddReplyTo($_POST["email"], $_POST["nome"]."  ".$_POST["cognome"]);

		
		$mail->AddAddress($admin_email);
		
		$mail->IsHTML(true);
		
		$messaggio = "Nome:&nbsp;&nbsp;". $_POST["nome"]."<br />";
		$messaggio .= "Cognome:&nbsp;&nbsp;". $_POST["cognome"]."<br />";
		$messaggio .= "Indirizzo Ip:&nbsp;&nbsp;". $_SERVER["REMOTE_ADDR"]."<br />";
		$browser = getBrowser($_SERVER['HTTP_USER_AGENT']);
		$ip = $_SERVER["REMOTE_ADDR"];
		$loc = _ipinfo($ip);
		$messaggio .= "Location: ".$loc. "<br />";
		$messaggio .= "Browser:&nbsp;&nbsp;". $browser."&nbsp;&nbsp;<br />";
		$messaggio .= "Messaggio: <br />". nl2br(replace_text($_POST["messaggio"]))."<br />";
		$messaggio .= "=====================================================================";
		
		$mail->Body= $messaggio;
		
		$oggetto = "Richiesta da ".$www_email." : ".$_POST["oggetto"]."";

		$mail->Subject=$oggetto;

		
			 if($mail->Send()){

				$msg = "ok, attendere prego..al ritorno della home page. ";
			
				redirect("index.php",4);
				
			}else{

				$error = "Errore invio mail";

			} 
			
			   
	   } else {
		  $error = 'Codice Di Sicurezza/Somma errata';
		}
	}
}
$nome = (isset($_POST["nome"])) ? trim(($_POST["nome"])): '';
$cognome = (isset($_POST["cognome"])) ? trim(($_POST["cognome"])): '';
$oggetto = (isset($_POST["oggetto"])) ? trim(($_POST["oggetto"])): '';
$messaggio = (isset($_POST["messaggio"])) ? trim(($_POST["messaggio"])): '';
$email = (isset($_POST["email"])) ? trim(($_POST["email"])): '';

if(isset($error)){ echo '<p class="info_error">'.$error.'</p>';}
if(isset($msg)){ echo $msg;} else {
?>   
<form action="/contact.php" method="post">
 <p>Nome</p>
 <p><input type="text" name="nome"  value="<?php if(isset($_POST['nome'])){echo htmlspecialchars($_POST['nome']);}else { echo htmlspecialchars($nome); }?>" /></p>
 <p>Cognome</p>
 <p><input type="text" name="cognome"  value="<?php if(isset($_POST['cognome'])){echo htmlspecialchars($_POST['cognome']);}else { echo htmlspecialchars($cognome); }?>"  /></p>
 <p>Oggetto</p>
 <p><select name="oggetto">
 <option value="Informazioni"   <?php if ($oggetto == "Informazioni") echo ' selected' ?>>Informazioni</option>
 <option value="Richiesta di contatto"    <?php if ($oggetto == "Richiesta di contatto") echo ' selected' ?>>Richiesta di contatto</option>
 <option value="Richiesta Curriculum Vitae"    <?php if ($oggetto == "Richiesta Curriculum Vitae") echo ' selected' ?>>Richiesta Curriculum Vitae</option>
 <option value="Altro"    <?php if ($oggetto == "Altro") echo ' selected' ?>>Altro</option>
</select>
</p>
 <p>Email</p>
 <p><input type="text" name="email" size="20" value="<?php if(isset($_POST['email'])){echo htmlspecialchars($_POST['email']);}else { echo htmlspecialchars($email); }?>" /></p>
 <p>Messaggio</p>
 <p><textarea rows="10" cols="40" name="messaggio" class="textarea_responsive"><?php if(isset($_POST['messaggio'])){echo $_POST['messaggio'];}else { echo $messaggio; }?></textarea></p>
 <p>
 <img src="security/captcha.php" alt="Codice Captcha" title="Codice Captcha">
 <input name="codice" type="text" id="codice" size="5"/>
 </p>
 <p><input type="submit" name="invia" value="invia"></p>
</form>
<?php } ?>
</fieldset>
</div>
<?php
echo "</div><!-- Fine pages -->\n";
echo "</div><!-- Fine f -->\n";
?>
<?php 
$layout->endBody();
echo $layout->render("layout/template.php");
?>


grazie mille e buona fine settimana.
 
Discussioni simili
Autore Titolo Forum Risposte Data
G Invio Mail con PHPMailer, problemi SMTP PHP 7
D For invio mail-allegato con smtp PHP 9
Robby84 Script invio mail tramite smtp PHP 7
A impostazioni smtp per invio mail PHP 12
R Invio dai tessera sanitaria PHP 1
M telecamera Foscam - mancato invio mail ad account gmail IP Cam e Videosorveglianza 0
G Invio di più valori con la stessa checkbox PHP 4
M Invio dati database via email php PHP 0
K [php]form invio dati PHP 0
G form invio multiplo con checkbox PHP 12
nivaria.achinet Intercettare form solo dopo invio Javascript 1
M Memorizzare i dati nei campi prima dell'invio al db PHP 4
M Unire 2 funzioni per l'invio di un form e con l'apertura di un div Javascript 0
Z PHP.INI - STMP per invio email con PHP Server Dedicati e VPS 0
M Form: come tornare ai campi già compilati dopo invio PHP 1
G Invio form con PHP PHP 3
M Invio di email PHP 0
A invio massivo dati a file php Javascript 4
P Funzione jQuery Ajax invio file a php jQuery 1
Cosina Upload multiplo con invio allegati per email PHP 0
C Mailchimp ritardo invio newsletter subscribers Email Marketing 1
G creazione menu a tendina e invio a pagina php PHP 1
R Invio mail con allegati multipli PHP 0
R Invio mail con allegati da directory PHP 1
Cosina Invio messaggio a mailing list su file txt PHP 9
W Invio Dati ad un altra pagina Classic ASP 1
S Invio email da form PHP 8
psicomia Server e url per invio di file Server Dedicati e VPS 3
max1974 Invio email PHP 12
Daniele_Carrara Problema timeout - invio mail PHP 7
U PHP bottone per invio mail o ritorno al form PHP 15
G Invio mail con php da dati prelevati da un database PHP 9
L [PHP] Invio Immagini PHP 1
AC1 [PHP] Invio Mail PHP 18
I [PHP] Invio sms multipli PHP 4
S Consigli per invio di comunicati stampa Discussioni Varie 2
A [PHP] Invio automatico dati da form PHP 6
F Estrazione Email di persone selezionate e attive / facebook + invio di massa! Annunci servizi di Social Media Marketing 0
ANDREA20 [PHP] Modulo email invio PHP 5
Shyson [PHP] Codice iscrizione e invio avviso nuovi articoli PHP 3
Tommy03 Errore invio email con PHP PHP 1
B [PHP] Invio mail automatico dopo compilazione form - db PHP 25
Cosina [PHP] Preservare i campi del form solo se l'invio non ha successo PHP 5
A [PHP] errore 404 e invio mai path pagina con link interrotto PHP 2
A [PHP] Invio messaggio a tutti gli iscritti PHP 2
M [PHP] Problema script ricezione e invio posta... PHP 1
C [PHP] Problema Invio Email Elseif PHP 2
A [PHP] Problema invio mail con funzione mail() PHP 3
Tommy03 Invio email con PHP PHP 3
A [PHP] RISOLTO Invio Mail con Tabella PHP 2

Discussioni simili