Buongiorno,
ho un piccolo problema con la spedizione di e-mail tramite PHPMailer.
Su DB ho un certo numero di persone alle quali spedire una e-mail. Dopo la lettura, con un while provo ad effettuare le spedizioni. Però dopo la prima mail (che viene spedita regolarmente) le successive non sortiscono effetto.
Per di più nel ciclo inserisco la stampa di una tabella che contiene i valori letti sul DB, anche in questo caso mi vengono visualizzate solo le prime due righe. Avete una idea del perchè?
Codice PHP:
$sel = "SELECT * FROM utenti U, anagrafica A";
$result=$mysql->query($sel) ;
WHILE ($riga = $result->fetch_assoc()) {
$utente = $riga['UTENTE'];
$email = $riga['EMAIL_CERTIFICATA'];
$nome = $riga['NOME'];
$cognome = $riga['COGNOME'];
include("_SpedisciMail.php");
}
Questa la _SpedisciMail.php
Codice PHP:
$port = $_SESSION['P1420-port'];
$server_smtp = $_SESSION['P1420-server_smtp'];
$username_smtp= $_SESSION['P1420-username_smtp'] ;
$password_smtp = $_SESSION['P1420-password_smtp'];
$indirizzo_mittente = $_SESSION['P1420-indirizzo_mittente'];
$descrizione_mittente = $_SESSION['P1420-descrizione_mittente'];
$indirizzo_destinatario1 = $email;
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
include ("PHPMailer/Exception.php");
include ('PHPMailer/PHPMailer.php');
include ("PHPMailer/SMTP.php");
$mail = new PHPMailer(true);
$mail->IsSMTP();
$mail->SMTPOptions = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
$mail->SMTPAuth = true;
$mail->Host = $server_smtp;
$mail->Port = $port;
$mail->SMTPSecure = "tls";
$mail->Username = $username_smtp;
$mail->Password = $password_smtp;
$mail->setFrom($indirizzo_mittente, $descrizione_mittente);
$mail->addAddress($indirizzo_destinatario1);
$mail->Subject = "Ogggetto della mail";
$mail->Body = "Corpo della mail";
if (!$mail->send()){
$mess = "Il messaggio non è stato inviato";
echo "$mess"; }
else { $mess = "E' stata inviata una mail informativa all'utente: $nome $cognome con indirizzo email: $email";
echo "$mess";
}