Envoie avec PHPmailer indésirable si utilisation de require [Résolu]

yoanpg 130 Messages postés dimanche 15 février 2009Date d'inscription 24 septembre 2018 Dernière intervention - 7 mai 2015 à 09:22 - Dernière réponse : jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention
- 7 mai 2015 à 11:39
Bonjour à tous,

J'ai plusieurs pages PHP sur mon site, donc certaines envoient des mails. Pour ça, j'ai utilisé PHP mailer (qui se connecte à un compte Gmail), et mis dans ma page le code proposé :
require 'PHPMailerAutoload.php';

$mail = new PHPMailer;

$mail->isSMTP();                                      // Set mailer to use SMTP
$mail->Host = 'smtp1.example.com;smtp2.example.com';  // Specify main and backup SMTP servers
$mail->SMTPAuth = true;                               // Enable SMTP authentication
$mail->Username = 'user@example.com';                 // SMTP username
$mail->Password = 'secret';                           // SMTP password
$mail->SMTPSecure = 'tls';                            // Enable encryption, 'ssl' also accepted

$mail->From = 'from@example.com';
$mail->FromName = 'Mailer';
$mail->addAddress('joe@example.net', 'Joe User');     // Add a recipient
$mail->addAddress('ellen@example.com');               // Name is optional
$mail->addReplyTo('info@example.com', 'Information');
$mail->addCC('cc@example.com');
$mail->addBCC('bcc@example.com');

$mail->WordWrap = 50;                                 // Set word wrap to 50 characters
$mail->addAttachment('/var/tmp/file.tar.gz');         // Add attachments
$mail->addAttachment('/tmp/image.jpg', 'new.jpg');    // Optional name
$mail->isHTML(true);                                  // Set email format to HTML

$mail->Subject = 'Here is the subject';
$mail->Body    = 'This is the HTML message body <b>in bold!</b>';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';

if(!$mail->send()) {
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
    echo 'Message has been sent';
}

J'ai évidemment modifié ce code pour me connecter à mon compte Gmail, et pour configurer le message à envoyer. Ca, ça fonctionne, aucun problème :)

Comme j'ai plusieurs pages qui envoient des mails, j'aurais voulu mettre ce code dans une fonction (qui prends en paramètre le contenu, le destinataire etc ...) dans une autre page PHP (qui se trouve dans ressources/mail.php), que j'appelle ensuite dans mes différentes pages, avec :
require_once 'ressources/mail.php';

Et dès que je fais ça, le mail envoyé est considéré comme SPAM par le destinataire (au moins sur Gmail) ! :(
Savez-vous pourquoi ? Est-ce que ça peut se corriger ou est-ce que je suis forcé de ne pas utiliser de require ?

Merci d'avance de votre aide :)
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
yoanpg 130 Messages postés dimanche 15 février 2009Date d'inscription 24 septembre 2018 Dernière intervention - Modifié par yoanpg le 7/05/2015 à 11:28
1
Merci
Dans le mail que j'envoie il n'y a ni image, ni URL vers une IP, ni BCC (j'avais commenté la ligne).

J'ai fait plusieurs tests comparatifs entre la version qui marche et la version qui marchait pas.

En fait, le problème venait de la ligne :
$mail->setFrom('monadresse@gmail.com', 'moi');

Le nom (ici 'nom') ne correspondait pas tout à fait au nom définit dans le compte Gmail associé, et visiblement ça venait de là.

C'est susceptible l'envoie de mail aujourd'hui quand même !
Merci les spammers qui en ont abusé et qui fait que le système est hyper protégé aujourd'hui :/

Merci de ton aide en tout cas :)

Merci yoanpg 1

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention - 7 mai 2015 à 11:39
C'est susceptible l'envoie de mail aujourd'hui quand même !

:-)



Si la question est résolue..
Merci de ne pas oublier de clôturer le sujet
(en cliquant sur le lien "Marquer comme résolu" qui se trouve sous le titre de la question)

Cordialement,
Jordane
Commenter la réponse de yoanpg
jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention - 7 mai 2015 à 10:08
0
Merci
Bonjour,

Et dès que je fais ça, le mail envoyé est considéré comme SPAM par le destinataire (au moins sur Gmail) ! :(
Savez-vous pourquoi ?

Je doute que ça soit du au fait de passer par un require ou non...

Les messageries se basent sur differents critères pour classer un mail en SPAM.
Au niveau de son contenu .. s'il y a une grande quantité d'images
.. si il y a une URL pointant sur une IP
... etc (je n'ai plus toutes les règles en tête).

Ca peut aussi venir de l'utilisation du BCC ...



Dans un premier temps il faudrait que tu testes ton envoie de mail
en retirant le BCC ....
Si ça ne marche toujours pas ... en retirant les pièces jointes...


Commenter la réponse de jordane45

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.