Dans le cadre d'un projet d'application web de mise en place et d'envoi de campagne emailing , la plus importante des fonctionnalites attendus par les clients est le suivi des emails apres leurs envoi ... Le suivi ou Tracking consiste a enregistrer dans une base de donnees MySQL , les ouvertures et les clicks des liens , les inscriptions et les desinscriptions des internautes de la newsletter envoye et l'enregistrer des differents taux ou totaux dans une base de donnes a fin d'etre exposé comme reporting pour des raisons de prise de décision ...

Pouvez vous nous montrer sous forme d'un tutorial PHP le code de tracking aprés envoi d'un email en php sachant savoir déjà comment envoyé un email en php ... le blem en php est de le suivre ? quel technique utiliser pour le faire et comment ?

Merci d'avance pour l'aide

1 réponse


Bonjour,
a mon avis la méthode la plus simple est de personnaliser toutes les adresses contenu dans les mails.

  • En utilisant un serveur statique et une image dans le mail, tu peux tracker l'ouverture du message. Si tu ajoute un paramètre à ton image (?mail_id=...) tu peux avoir un lien unique par email. Ensuite, à l'aide d'un script PHP ou autre, tu parcours tes logs pour récupérer paramètres et tu les croise à la liste des mails envoyés. Ainsi tu peux avoir lesquels ont été ouvert.
  • En appliquant un principe similaire tu peux identifier les clicks sur les liens (si tu utilise un mvc, tu ajoute un test sur les paramètres de ta page pour savoir si il provient d'un mail)
  • Pour ce qui est des inscriptions/désinscription, tu va utiliser des formulaires donc tu peux bien stocker des données cachées au même moment (localisation, etc)
  • Finalement, pour les statistiques, je pense qu'effectuer les calculs de statistique au chargement de la page ne va pas poser trop de problème. A part pour le parcours des logs qui peut prendre un certain temps. Pour ce dernier, une tâche planifiée semble plus appropriée (récupération des paramètres et modifications de l'état des mails présent en BDD).

Je suis bien conscient que je ne fournis rien de concret tel que du code, mais j'espère avoir pu aider :).

Bonne journée,
Cordialement,
TD