Buongiorno, sono nuovo del forum, ma vado subito al sodo. Sto sviluppando un sito con un semplicissimo form contatti e relativo codice di controllo e invio mail. La mail deve essere inviata sia a me sia al mittente in copia come bcc. Da due giorni sono passato dal sistema mail() a phpmailer su consiglio di altri. Il problema è che però non ricevo nessuna mail nonostante abbia i messaggio che la mail è stata inviata. vi allego markup
<h3>Scrivici</h3>
<!-- Form di contatto -->
<?php
$status = @$_GET['status'];
if ($status == 'Fv'){
echo "<br /><span class='error'>I campi non devono essere vuoti.</span>";
form();
} elseif ($status == 'Fm'){
echo "<br /><span class='error'>L'Email non è valida!</span>";
form();
} elseif ($status == 'F'){
echo "<br /><span class='error'>Si è verificato un errore nell' invio. Riprova più tardi.</span>";
} elseif ($status == 'T'){
echo "<br /><span class='sendOk'>Grazie, il messaggio è stato inviato. Ti risponderemo al più presto</span>";
} else {
form();
}
function form() {
echo' <form method="post" name="form" id="form" action="processor2.php"><br />';
echo' <label for="name">Nome</label><input name="name" type="text" class="testo_nome" value="" /><br />';
echo' <label for="azienda">Azienda</label><input name="azienda" type="text" value="" /><br />';
echo' <label for="mail">E-Mail</label><input name="mittente" type="text" value="" /><br />';
echo' <label for="messagge">Messaggio</label><textarea name="messagge" cols="50" rows="10" type="testo" class="testo_messaggio" value=""></textarea><br />';
echo' <label for="button"></label><input type="submit" name="button" id="fbutton" value="Invia" onclick="return thisform(this.form)"/><br />';
echo' </form><br /';
}
?>
e php
<?php
function mailMsg ($status) {
header('Location:OBIV_contatti.php?status=' .$status);
exit;
}
if(isset($_POST['button'])) {
$name = $_POST['name'];
$mittente = $_POST['mittente'];
$testo = $_POST['messagge'];
$azienda = $_POST['azienda'];
$name = htmlspecialchars(addslashes ($name));
$mittente = htmlspecialchars(addslashes ($mittente));
$testo = htmlspecialchars(addslashes ($testo));
$azienda = htmlspecialchars(addslashes ($azienda));
$time = date('Y,j H:i:s', $_SERVER['REQUEST_TIME']);
define("EOL", "rn");
// $validEmail = "^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3})|([a-zA-Z]{2,3})|(aero|coop|info|museum|name))$";
if(empty($name) && empty($mittente) && empty($testo)){
mailMsg(Fn);
} if (!filter_var($mittente,FILTER_VALIDATE_EMAIL)){ mailMsg(Fm);
} else {
//$messagge = "Inviata da.\n Nome:".$name."\n Società:".$azienda."\n E-mail:".$mittente."\n Messaggio:".$testo."
//\n".$_SERVER['HTTP_USER_AGENT'];"\n".$_SERVER['REMOTE_ADDR']."n".$time;
//Includo la classe phpmailer
require_once ("class.phpmailer.php");
//Instanzo la classe
$mail = new PHPmailer();
$mail->IsSMTP();
$mail->Host='smtp.mio.it';
//Definisco le variabili e le intestazioni della mail
$mail->From = 'miamail@gmail.com'; //Mail di Emad
$mail->FromName = ('Solution'); //Mail di provenienza che apparirà al destinatario
$mail->Sito = ('www.xxx.com');
$mail->AddAddress($mittente); //Indirizzo del cliente
$mail->Azienda = ($azienda); //Nome della ditta che invia la mail
$mail->Messaggio = ($testo); //Richiesta
$mail->Browser = ($_SERVER['HTTP_USER_AGENT']); //Browser utilizzato
$mail->IP = ($_SERVER['REMOTE_ADDR']); //Indirizzo Ip del cliente
$mail->Orario = ($time); //Orario del cliente
if(!$mail->Send()){ //errore di invio
echo "C'è stato un errore nell'invio della mai. Riprova più tardi";
} else { //invio avvenuto
echo "Grazie! La mail è stata inviata correttamente, la contatteremo al più presto.";
//Reindirizzare la pagina alla Home
header ('Refresh: 3; URL=index.html');
print "Tra 3 secondi sarai indirizzato alla Home Page";
}
$mail->SmtpClose();
mailMsg (T);
unset ($mail);
}}
else {
mailMsg(F);
}
?>
Sapete aiutarmi?