informilo-kea/enviador-backup.php
2022-11-02 16:30:02 +01:00

120 líneas
3,5 KiB
PHP

<?php
//PInicialitzem els fitxers de PHPMailer
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'src/Exception.php';
require 'src/PHPMailer.php';
require 'src/SMTP.php';
//Incloem paràmetres de la newsletter
include("config.inc");
function trim_value($a) {
$a = trim($a);
return $a;
}
$per = "";
// Agafa el missatge i el poses en un string
$missatge = file_get_contents($html_missatge);
//Recupera ls adreces de correu, treu espais en blanc i crea sub-arrays de 20 adreces.
$correus = file($correus_fitxer);
$correusnets = array_map('trim',$correus);
$correus_trossejats = array_chunk($correusnets,20);
$correusenviats = 0;
$correusfallits = 0;
$numerodemail = 1;
//Determinem si el correu és de prova o no
$p = $_GET['p'];
if ($p==0) {
$correudeprova = false;
} else {
$correudeprova = true;
}
//Crea encapçalaments
//$headers .= 'Cc: Unitat de Promoció i Comunicació de la FUAB <promocio.fuab@uab.cat>' . "\r\n";
if ($correudeprova === true) {
$correu = new PHPMailer();
$correu->isSMTP();
$correu->Host = 'smtp.office365.com';
$correu->SMTPAuth = true;
$correu->Username = '1468733@uab.cat'; //paste one generated by Mailtrap
$correu->Password = 'ProCom2021!'; //paste one generated by Mailtrap
$correu->SMTPSecure = 'tls';
$correu->Port = 587;
//Fem els encapçalaments
$correu->setFrom('promocio.fuab@uab.cat', 'Unitat de Promoció i Comunicació de la FUAB');
$correu->addReplyTo('promocio.fuab@uab.cat', 'Unitat de Promoció i Comunicació de la FUAB');
$correu->addAddress('promocio.fuab@uab.cat', 'Unitat de Promoció i Comunicació de la FUAB');
//$correu->addCC('cc1@example.com', 'Elena');
$correu->addBCC('enric.pineda@uab.cat', 'Enric Pineda');
$correu->addBCC('victoria.salvador@uab.cat', 'Victòria Salvador');
$correu->addBCC('sara.centellas@uab.cat', 'Sara Centellas');
$correu->addBCC('esther.crespo@uab.cat', 'Esther Crespo');
//Posem un PROVA al començament del tema
$temaprova = "[PROVA] ".$tema;
$correu->Subject = $temaprova;
$correu->isHTML(true);
$correu->Body = $missatge;
$correu->CharSet = 'UTF-8';
//Enviem el correu
if($correu->send()){
echo 'Missatge de prova enviat';
}else{
echo "El missatge no s'ha enviat.";
echo 'Error: ' . $correu->ErrorInfo;
}
} else {
foreach ($correus_trossejats as $correusfinals){
$correu = new PHPMailer();
$correu->isSMTP();
$correu->Host = 'smtp.office365.com';
$correu->SMTPAuth = true;
$correu->Username = '1468733@uab.cat'; //paste one generated by Mailtrap
$correu->Password = 'ProCom2021!'; //paste one generated by Mailtrap
$correu->SMTPSecure = 'tls';
$correu->Port = 587;
//Fem els encapçalaments
$correu->setFrom('promocio.fuab@uab.cat', 'Unitat de Promoció i Comunicació de la FUAB');
$correu->addReplyTo('promocio.fuab@uab.cat', 'Unitat de Promoció i Comunicació de la FUAB');
$correu->addAddress('promocio.fuab@uab.cat', 'Unitat de Promoció i Comunicació de la FUAB');
//POsem els correus en bccomp
foreach ($correusfinals as $correu_usuari_final) {
$correu->addBCC($correu_usuari_final);
}
$correu->Subject = $tema;
$correu->isHTML(true);
$correu->Body = $missatge;
$correu->CharSet = 'UTF-8';
//Enviem el correu
if($correu->send()){
$correusenviats++;
}else{
$correusfallits++;
}
}
}
// Descomentar per bug check
//echo $headers;
//print_r($correus_trossejats);
if ($correudeprova !== true){
echo "Hem enviat un total de $correusenviats correus a un total de ".count($correusnets)." persones<br />";
echo "End Of Line!";
}
?>