Méthylbro Développeur Web PHP

dimanche 5 juillet 2009

Une alternative à la fonction mail() pour de l'envoi en masse

Emailing avec PHP : Pourquoi faut il éviter la fonction mail() ?Nous l'avons vu ; utiliser la fonction mail() de PHP pour faire de l'emailing est une mauvaise pratique très répandu. Cependant avant d'utiliser les paquets de Pear résolvant cette problématique il serait très facile de la part d'un développeur de créer lui-même les outils nécessaires.

Bien évidement pour cela, il faut connaître un minimum le protocole SMTP et son fonctionnement. C'est une des raison qui m'ont poussés à m'attarder dessus en milieu de semaine.

Aujourd'hui nous allons créer un petit équivalent de la fonction mail() à base d'objet et de sockets.

Lire la suite...

vendredi 3 juillet 2009

La fonction mail() dans une boucle

Emailing avec PHP : Pourquoi faut il éviter la fonction mail() ?Utiliser la fonction mail() au sein d'une boucle (for, foreach, while, etc) est une mauvaise pratique que l'on trouve encore trop régulièrement. Si la fonction mail() est une interface très agréable à utiliser pour négocier avec serveur SMTP dans le cadre de l'envoi d'un mail ; elle est un très mauvais choix pour un envoi de masse.

La fonction négocie directement avec le serveur SMTP. Elle permet au développeur de résoudre un impératif technique courant : l'envoi de courrier électronique.

Lire la suite...

mercredi 1 juillet 2009

Le protocole SMTP

Emailing avec PHP : Pourquoi faut il éviter la fonction mail() ?Comme pour beaucoup de choses en PHP ; pour bien saisir les points faible d'une méthode par rapport à une autre ; il faut avant tout maîtriser le sujet que l'on traite. Ici il s'agit de l'envoi de courrier électronique et donc implicitement de l'utilisation du protocole SMTP (Simple Mail Transfert Protocol).

Comme son nom l'indique ; le protocole SMTP est très simple. Il est même parmi les protocoles les plus simple à comprendre. Il suffit simplement de signaler au serveur SMTP qui est l'émetteur d'un message, quel est son destinataire et de rédiger enfin le dit message et il s'occupe du reste.

C'est ce que fait la fonction mail() de PHP pour vous. Elle se connecte et donne au serveur SMTP défini dans votre php.ini toutes ces informations. Pour mieux comprendre donc comment cette dernière fonctionne ; je vous invite à faire un petit test. Envoyer vous-même ; sans client mail, sans fonction mail, un courrier à l'aide du protocole SMTP.

Lire la suite...

lundi 29 juin 2009

Emailing avec PHP : Pourquoi faut il éviter la fonction mail() ?

Emailing avec PHP : Pourquoi faut il éviter la fonction mail() ?Dans le cadre de développement d'applications web ; il est très courant de vouloir envoyer des emails. Pour gérer l'identité de vos utilisateurs, pour prévenir ces derniers de mises à jours sur votre site ou pour plein d'autres raisons encore nous devons écrire des algorithmes dont le but et d'envoyer tel ou tel email.

En PHP, l'envoie de courrier électronique est extrêmement simplifié par l'utilisation de la fonction mail(). Cependant ; mal utilisée cette dernière peut faire beaucoup de dégâts.

Plusieurs choses sont à savoir sur cette fonction ; comme par exemple en terme de sécurité. Toutefois cette semaine je vais m'attarder sur un point que le manuel officiel de PHP ne fait qu'effleurer : sa consommation en ressources.

  1. Le protocole SMTP
  2. La fonction mail() dans une boucle
  3. Une alternative à la fonction mail() pour de l'envoi en masse