Question

J'ai besoin de TOS et mon application pour envoyer des e-mails périodiques pour mon site de réseautage social. La fréquence des e-mails serait très sporadique en fonction des interactions utilisateur. Par exemple, mon site a un module QNA - je permette aux utilisateurs de suivre les questions, donc chaque fois qu'une réponse est publiée, tous les abonnés de la question recevraient un e-mail.

Je pensais à la mise en œuvre en utilisant un travail cron qui fonctionnerait périodiquement dans le fond à des intervalles de 5 à 10 minutes. L'idée est que chaque fois qu'une mise à jour est effectuée, une entrée est transformée en une base de données avec la liste des destinataires et du corps par e-mail. Un travail Cron vérifierait ensuite périodiquement la base de données pour de tels travaux et l'exécuterait sur laquelle le travail serait marqué comme exécuté.

Je me demandais s'il y a quelque chose d'open source qui peut m'aider ici. J'ai juste besoin de code qui envoie des e-mails en arrière-plan et tout ce que j'ai à fournir est le tableau de base de données pour que les e-mails puissent envoyer ainsi que le corps des e-mails.

Était-ce utile?

La solution

Mail () avec php
Envoi d'e-mails en vrac dans PHP
Envoi d'e-mails de masse à l'aide de PHP
Meilleure façon d'envoyer plus de 10 000 e-mails avec Pear / Mail_queue
Comment puis-je déboguer un script PHP Cron qui ne semble pas être en cours d'exécution?
Cron Job pour exécuter un programme PHP

Si vous avez déjà une base de données écrivant votre propre script PHP n'est pas si difficile, utilisez simplement un courrier par défaut () ou une autre fonction LiB (comme suggéré Swift) et mettez-le de la base de données des éléments des éléments, alors exécutez ce script avec cron. Bien sûr, je me trompe puisque je suis programmeur Python, mais dans la façon dont je vois, c'est juste une fonction d'envoi avec cycle et une requête SQL qui donnerait par exemple 5 courriers chaque minute.

Avantages de cela:

  • Vous apprendrez quelque chose (très probablement).
  • Vous passerez moins de temps que de rechercher une alternative OpenSource qui nécessitera une modification qui vous conviendra.

Autres conseils

Jetez un œil à Swift Mailer (http://swiftmailer.org) et phpmailer (http://phpmailer.worxware.com).

En supposant que votre serveur a un courrier (), vous devriez simplement pouvoir faire quelque chose comme ça

$sql = ;//Sql query to grab data
$rs = ;// Result of sql query
if(sizeof($rs) > 0)
{
    foreach($rs as $item)
    {
        mail($to, $subject, $message, $headers);
        // SQL query to update rows saying its been sent out or something like that
    }
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top