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

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
43
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