2008-10-17 9 views
0

J'ai une table (volontaires_2009) dans laquelle tous les bénévoles sont stockés, puis j'ai une table (lieux) qui répertorie tous les lieux où un bénévole peut travailler (les volontaires sont affectés à un lieu et sont stockés dans volontaires_2009 .venue_id, qui équivaut à lieux.id)Comment envoyer des fichiers CSV à des courriels spécifiques?

La table des lieux a aussi une colonne pour les emails, chaque email est pour le président de chaque site. Ce que je veux faire, c'est pouvoir envoyer automatiquement à chaque président un email avec un fichier CSV de la table des volontaires (volunteers_2009), et pendant ce processus, je veux qu'il associe volunteers_2009.venue_id avec lieux.id et envoyer le CSV avec seulement les volontaires assignés au lieu de ce président, ainsi le président reçoit seulement un CSV des volontaires qui ont été assignés à leur lieu.

Je passerais par la table des lieux, commencerais par le début, apparierais les lieux.id à volunteers_2009.venue_id, puis lancerais la fonction d'export CSV pour extraire toutes les données WHERE lieu_id = #, puis l'attacher dans le courriel et le destinataire serait lieux.chair_email. J'ai déjà une fonction CSV à l'export, je peux simplement la passer à l'adresse "lieu" pour trouver les volontaires appropriés, et j'ai aussi une fonction de courrier électronique qui fonctionne, donc je peux transmettre la pièce jointe et le destinataire.

Voici un croquis de la théorie de la fonction des fonctions qui obtenir ce fait: alt text http://i34.tinypic.com/2qkt1fd.jpg

Si vous voyez une meilleure façon sur la façon d'aller à ce sujet (si vous pouvez suivre avec ma pauvre main écrit), alors s'il vous plaît faites le moi savoir, merci.

+0

Que doivent savoir les oyu? –

+0

Quel serait le code. – Brad

+0

On dirait que vous avez un bon plan, pourquoi ne pas l'essayer? Si vous avez un problème, vous ne pouvez pas résoudre, revenez et demandez. – tvanfosson

Répondre

1

Je pense que la plus grande chose qui vous manque (si je lis bien) est la partie emailing. Jetez un oeil à Swift Mailer pour des exemples de la façon de le faire.

Je l'installe sur chaque nouveau projet PHP pour supporter exactement cela.

+0

Bon sang, ça me manquait. Ugh ... –

+0

Peu importe, je n'avais pas rencontré Swift Mailer avant et il semble pratique - merci! – Johan

1

En supposant que vous ajoutiez la gestion des erreurs, vous semblez avoir bien compris. Vous pouvez ajouter l'ID du lieu au nom du fichier CSV afin de pouvoir enregistrer une copie de chaque fichier (pour l'audit ou les rebonds, ou si le système de messagerie est en panne, etc.).

Questions connexes