J'ai créé un identifiant de messagerie pour mon application web PHP. Les utilisateurs enverront des e-mails à cet identifiant.
Je veux traiter ces e-mails dans l'application. Comment dois-je m'y prendre ?
Merci d'avance.
J'ai créé un identifiant de messagerie pour mon application web PHP. Les utilisateurs enverront des e-mails à cet identifiant.
Je veux traiter ces e-mails dans l'application. Comment dois-je m'y prendre ?
Merci d'avance.
J'ai récemment travaillé sur un projet qui nécessitait l'analyse d'un e-mail provenant de gmail et la mise à jour de la base de données avec certaines valeurs basées sur le contenu de l'e-mail. J'ai utilisé l'outil ezcMail (maintenant) Composants Zeta pour se connecter au serveur de messagerie et analyser les courriels.
La stratégie que j'ai adoptée a été de filtrer tout le courrier entrant intéressant avec une étiquette "non traité". Exécuter le script PHP via une crontab toutes les 15 minutes. Le script se connectait au serveur de messagerie et ouvrait le dossier IMAP unprocessed et analysait chaque e-mail. Après avoir inséré les valeurs intéressantes dans la base de données, le script déplace les fichiers vers un autre dossier IMAP "Proccessed".
J'ai aussi trouvé L'IMAP est meilleur que le POP pour ce genre de traitement.
Récemment, j'ai voulu être en mesure de recevoir des e-mails immédiatement dans quelque chose que je faisais donc j'ai fait quelques recherches (je suis venu chercher cette question ici aussi en fait) et j'ai fini par trouver Google App Engine pour être assez utile. Il dispose d'une API que vous pouvez utiliser pour recevoir et traiter les courriels envoyés à l'adresse suivante ____@yourapp.appspotmail.com
. Je sais que cela ne semble pas vraiment utile puisque vous ne voulez probablement pas que votre application soit sur App Engine et que vous voulez recevoir des e-mails à yourdomain.tld, mais avec un peu de configuration vous pouvez obtenir ce que vous voulez.
Ma configuration de base est la suivante :
Vous pouvez donc créer une petite application GAE qui fonctionne comme un intermédiaire pour récupérer les e-mails. Même avec la redirection, tout se passera bien, l'email sera correct.
J'ai également décidé d'apprendre un peu de django et j'ai créé une application gratuite appelée Emailisation qui fera ça pour vous. Vous créez un destinataire comme ___@emailization.com
et donner une URL à laquelle POST. Tout ce qui est envoyé à cette adresse est transféré vers votre URL. Vous pouvez créer un "catchall" sur votre domaine qui sera redirigé vers le destinataire de l'emailing et vous recevrez également des emails via le "catchall" !
ou vous pouvez voir un petite application GAE J'ai fait ce que vous pouvez installer vous-même qui fait la même chose.
J'espère que cela aidera quelqu'un !
Utilisez procmail s'il est installé sur votre système. Placez ces lignes dans un fichier .procmailrc dans le répertoire personnel de l'utilisateur qui reçoit le courrier électronique.
:0
| /path/to/your/script.php
Ou vous pouvez aussi utiliser un fichier .forward contenant
"|/path/to/your/script.php"
Procmail présente l'avantage de vous permettre de gérer un filtrage plus complexe si votre application le nécessite un jour.
Votre fichier script.php lira les en-têtes et le corps de l'e-mail à partir de stdin.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.