newsletter à plus de 10 000 membres

Eléphanteau du PHP | 28 Messages

30 août 2005, 08:34

Bonjour à tous : )

Quelle est la meilleure solution pour un envoi de newsletter à plus de 10 000 personnes ? Sachant que ces mails sont stockés dans une base de données MySql.
Une boule for avec un simple mail sont ils envisageables ?

Merci d'avance !!!

Mammouth du PHP | 19672 Messages

30 août 2005, 08:44

Je verrais plutôt un mail() tout court mais envoi en Bcc, le $bcc étant lui construit dans une boucle. Mais je me demande si pour 10000 envois ça va passer en une seule fois ...:-k
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 199 Messages

30 août 2005, 08:47

Personnelement je pense que tu devrais envoyer pas plus de 1000 mails a la fois.
Les 2 font la paire : coder ET commenter :wink:

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

30 août 2005, 08:48

pour un nombre important d'emails à envoyer, la doc PHP conseille l'utilisation du package PEAR :
Note : Il est important de noter que la fonction mail() n'est pas conseillée pour traiter de gros volumes de mails dans une boucle. Cette fonction ouvre et ferme un socket SMTP pour chaque mail, ce qui n'est pas très efficace.

Pour envoyer de gros volumes de mails, reportez-vous aux paquets PEAR::Mail et PEAR::Mail_Queue.
=> http://fr3.php.net/manual/fr/function.mail.php

Eléphanteau du PHP | 28 Messages

30 août 2005, 11:20

Merci à tous pour ces réponses :)

Quelqu'un sait t'il s'il y a une limite dans le BCC ? (et si c'est lent à envoyer?) pcq ca sera la solution la plus rapide à mettre en place :)
Peut etre que de faire des envois de 1000 par 1000 dans une boucle serait la meilleure solution

Sinon est ce que ça vaut la peine de mettre en place le package pear ?

Merci encore pour votre aide !!!

Mammouth du PHP | 19672 Messages

30 août 2005, 11:23

Il y a des chances pour que le package soit déjà en place, pose la question à ton hébergeur, sinon, ce ne sont que quelques classes que tu peux ajouter simplement dans un répertoire de ton site, il faudra simplement faire un include() de la classe dans ton application d'envoi.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphanteau du PHP | 28 Messages

30 août 2005, 11:41

Merci bcp Cyrano :)

Est ce que tu penses que les envois en BCC c quand meme jouable ? Toi en tant qu'émninant spécialiste tu le ferais comme ca ?

Merci encore

Mammouth du PHP | 19672 Messages

30 août 2005, 11:59

Ce sera beaucoup plus efficace qu'une boucle sur mail(). Comme l'a signalé ouckileou, l'ouverture et la fermeture 10000 fois de suite d'un socket risque fort de faire grogner le système.

Et pour des envois de cette importance, je regarderais PEAR de très près aussi.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
pjl
ViPHP | 2119 Messages

30 août 2005, 12:14

Pour 10.000, du PEAR ou un soft spécialisé. Ca ne vaut pas si cher que celà.

Eléphanteau du PHP | 28 Messages

30 août 2005, 12:18

Merci encore, je commence à y voir plus clair :)

Est ce que certains soft utilise directement Mysql ? Car si je dois rentrer tout les noms un par un, ca risque de prendre du temps et ce n'est surtout pas pratique pour la mise à jour :/

Merci

ViPHP
pjl
ViPHP | 2119 Messages

30 août 2005, 12:19

tous les softs pécialisés dans l'envoi de mailing communiquent avec une BDD.

Eléphanteau du PHP | 28 Messages

30 août 2005, 12:36

Oki excellent :)

est ce que tu as un soft à me conseillé, efficace, facile à prendre en main et pas cher ? (lol ben ouais c'est toujours ce qu'on demande à un soft). J'ai pas besoin de grand chose en fonction Juste envoyer des message Html ou Text à partir d'adresse présente dans une BDD Mysql :)

Merci encore à tous !!! :D

chrileb
Invité n'ayant pas de compte PHPfrance

30 août 2005, 16:28

Juste une petite question,
comment tu compte faire pour que ton mail ne soit pas considéré comme du spam?

merci

Mammouth du PHP | 19672 Messages

30 août 2005, 16:50

En ne l'envoyant qu'aux abonnés à la newsletter ;)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 50 Messages

30 août 2005, 16:51

une boucle avec un sleep() peut aussi faire l'affaire...