Problème de doublon sous phpmailer
Fermé
corentin.bc
Messages postés
383
Date d'inscription
dimanche 8 février 2015
Statut
Membre
Dernière intervention
4 novembre 2022
-
3 mai 2017 à 05:17
corentin.bc Messages postés 383 Date d'inscription dimanche 8 février 2015 Statut Membre Dernière intervention 4 novembre 2022 - 3 mai 2017 à 14:00
corentin.bc Messages postés 383 Date d'inscription dimanche 8 février 2015 Statut Membre Dernière intervention 4 novembre 2022 - 3 mai 2017 à 14:00
A voir également:
- Problème de doublon sous phpmailer
- Supprimer doublon excel - Guide
- Logiciel doublon photo - Télécharger - Nettoyage
- Doublon photo windows - Guide
- Supprimer doublon word ✓ - Forum Word
- Tirage au sort excel aléatoire sans doublon ✓ - Forum Excel
2 réponses
Utilisateur anonyme
3 mai 2017 à 08:58
3 mai 2017 à 08:58
Il faut partager le code pour qu'on puisse aider, car là il semble que la fonction qui permet l'envoie de mail est appelé deux fois, mais c'est qu'une supposition.
corentin.bc
Messages postés
383
Date d'inscription
dimanche 8 février 2015
Statut
Membre
Dernière intervention
4 novembre 2022
8
3 mai 2017 à 14:00
3 mai 2017 à 14:00
Salut,
voici mon code intégral :
voici mon code intégral :
<?php
require($_SERVER['DOCUMENT_ROOT']."/mailer/PHPMailerAutoload.php");
$mailer=new PHPMailer();
$mailer->SetLanguage("fr",".");
/* Ce programme envoie automatiquement la newsletter et nettoye la table. */
include('dbconnect.php');
# Netoyage de la table
$req = $bdd->prepare('DELETE FROM newsletter_mails WHERE expire<?');
$req->execute(array(time()));
# Sélection des mails
$r = '(freq=1';
if(localtime()[3] == 1)# premier jour du mois
$r .= ' OR freq=5';
if(localtime()[6] == 1 and intval(date('W'))%2 == 0)# lundi et semaine paire
$r .= ' OR freq=4';
if(localtime()[6] == 1)# lundi
$r .= ' OR freq=3';
if(localtime()[7]%2 == 0)# jour pair sur l'année
$r .= ' OR freq=2';
$r .= ')';
# Lister les catégories
$cat = array();
$req = $bdd->query('SELECT * FROM softwares_categories');
while($data = $req->fetch()) {$cat[$data['id']] = $data['name'];}
# Prendre des infos à envoyer
$req = $bdd->prepare('SELECT * FROM softwares WHERE date>=? ORDER BY date DESC');
$req->execute(array(time()-2678400));# récents d'au plus un mois
$sft = array();
while($data = $req->fetch()) {
$sft[] = $data;
}
$req = $bdd->prepare('SELECT * FROM softwares_files WHERE date>=? ORDER BY date DESC');
$req->execute(array(time()-2678400));# récents d'au plus un mois
$files = array();
while($data = $req->fetch()) {
$files[] = $data;
}
$message1 = "<!DOCTYPE html>
<html>
<head>
<meta charset=\"utf-8\" />
<title>Newsletter ProgAccess33</title>
<style type=\"text/css\">
@font-face {font-family: Cantarell;src: url(https://progaccess33.net/css/Cantarell-Regular.otf);}
html, body {margin: 0;padding: 0;font-family: Cantarell;}
.software {border-left: 2px dashed black;padding-left: 10px;}
.software_title {margin-bottom: -8px;}
.software_date {color: #606060;margin-left: 15px;}
.software_hits, .software_category {color: #008000;}
</style>
</head>
<body>
<div id=\"header\">
<img id=\"logo\" alt=\"Logo\" src=\"data:image/png;base64,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\" />
<h1>Newsletter ProgAccess33</h1>
</div>
<div id=\"content\">
<h2>Nouveaux logiciels et mises à jour</h2>";
$message2 = '<a id="link" href="https://progaccess33.net/nlmod.php?id='; $message3 = '">Cliquez ici pour modifier les paramètres de votre abonnement ou vous désinscrire.</a>
<p>Ce mail a été envoyé automatiquement, merci de ne pas répondre.</p>
<p>Cordialement,<br />L\'équipe ProgAccess33</p>
</div>
</body>
</html>';
$headers[] = 'MIME-Version: 1.0';
$headers[] = 'Content-type: text/html; charset=UTF-8';
$headers[] = 'From: ProgAccess33 <noreply@progaccess33.net>';
$headers = implode("\r\n", $headers);
$subject = 'Newsletter ProgAccess33';
# Envoi des mails
$req = $bdd->prepare('SELECT * FROM newsletter_mails WHERE confirm=1 AND '.$r);
$req->execute();
while($data = $req->fetch()) {
$message = $message1;
foreach($sft as $software) {
if($software['date'] > $data['lastmail']) {
$message .= '<hr /><div class="software"><a href="article.php?id='.$software['id'].'" rel="nofollow noopener noreferrer" target="_blank"><h2 class="software_title">'.$software['name'].'</h2></a><p><span class="software_category">('.$cat[$software['category']].')</span> '.$software['description'].'<br /><span class="software_hits">'.$software['hits'].' visites</span><span class="software_date"> (mise à jour le '.date('d/m/Y à H:i:s', $software['date']).')</span></p><ul>';
foreach($files as $file) {
if($file['sw_id'] == $software['id'])
$message .= '<li>'.$file['title'].'</li>';
}
$message .= '</ul></div>';
}
}
if($message != $message1) {
$message .= $message2.$data['hash'].$message3;
$mailer->AddAddress($data['mail']);
$mailer->AddCustomHeader("x-IP: ".$_SERVER['REMOTE_ADDR']);
$mailer->AddReplyTo("noreply@progaccess33.net");
$mailer->IsSMTP();
$mailer->Host = "mail.gansta93.com";
$mailer->port = 587;
$mailer->SMTPAuth = true;
$mailer->Username = "noreply@progaccess33.net";
$mailer->Password = "Pddi3_98";
$mailer->IsHTML(TRUE);
$mailer->AltBody=($message);
$mailer->Body=($message);
$mailer->setFrom("noreply@progaccess33.net", "l'équipe ProgAccess33");
$mailer->HostName="progaccess33.net";
$mailer->Sender="noreply@progaccess33.net";
$mailer->Subject=($subject);
$mailer->CharSet = "UTF-8";
$mailer->Send();
if ($mailer->IsError())
{
echo $mailer->ErrorInfo;
exit();
}
}
else {}
/* mail($data['mail'], $subject, $message, $headers); */
$req2 = $bdd->prepare('UPDATE newsletter_mails SET lastmail=? WHERE id=?');
$req2->execute(array(time(), $data['id']));
}
$req->closeCursor();
?>