Problème de doublon sous phpmailer
corentin.bc
Messages postés
383
Date d'inscription
Statut
Membre
Dernière intervention
-
corentin.bc Messages postés 383 Date d'inscription Statut Membre Dernière intervention -
corentin.bc Messages postés 383 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
suite aux conseils d'un ami j'utilise maintenant PHPMailer pour envoyer les mails de mon site.
Seulement j'ai un souci, les mails s'envoient toujours en double ?
Que faire pour corriger ce pb ?
Merci.
suite aux conseils d'un ami j'utilise maintenant PHPMailer pour envoyer les mails de mon site.
Seulement j'ai un souci, les mails s'envoient toujours en double ?
Que faire pour corriger ce pb ?
Merci.
A voir également:
- Problème de doublon sous phpmailer
- Doublon photo - Guide
- Supprimer doublon excel - Guide
- Logiciel doublon photo gratuit - Télécharger - Nettoyage
- Supprimer doublon word ✓ - Forum Word
- Logiciel pour doublon musique gratuit - Télécharger - Nettoyage
2 réponses
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.
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();
?>