2013-05-09 3 views
0

На нашем веб-сайте мы используем таблицу MySQL, которая содержит всех пользователей. Некоторые пользователи должны иметь возможность отправлять письма всем пользователям. К сожалению, у меня нет правильной идеи, как реализовать такую ​​систему.Пользовательская система рассылки

Мой текущий дизайн:

  • Привилегированный пользователь пишет письмо на [email protected] используя свою личную программу почты.
  • Сервер ожидает входящих сообщений.
  • Как только он получает почту, он совпадает с полем «От» с базой данных.
    • Если пользователь не найден или не имеет специального флага, отмените его.
  • Пересылка почта для всех пользователей (адрес электронной почты сохраняется в базе данных)
  • Отправить отправитель подтверждение по электронной почте.

Как я могу реализовать такую ​​систему? Я не обязан придерживаться определенного языка программирования, хотя предпочтительнее использовать C++, PHP или Node.JS.

+0

Мне кажется, что было бы проще, если бы пользователь отправил почту с самого сайта, а не сразу отправил электронное письмо на ваш сервер. Первая - это еще одна страница или две, а некоторые вызовы базы данных приводят к сообщению электронной почты. Последнее (это то, что вы предлагаете) может включать в себя написание собственного SMTP-сервера, что является усилием, чреватым опасностью. – David

ответ

0

Как прыгающий пункт, посмотрите IMAP/SMTP. Вы можете с любого языка войти в почтовый ящик электронной почты, получить электронную почту, прочитать их и т. Д. И т. Д. И т. Д. Настройте свой почтовый ящик с учетной записью [email protected], которая получает законные электронные письма. Затем настройте задание cron, которое проверяет входящие сообщения каждые 5 минут или около того. Если никакие электронные письма не найдены, значит, все готово. Если там есть электронная почта, обработайте ее, запустите свои проверки против своей БД и отправьте ее с помощью SMTP, а затем отправьте подтверждение пользователю.

Если обработка IMAP слишком сложна, вы можете просто создать на своем сайте форму, которую могут использовать привилегированные пользователи, которые отправляют электронные письма пользователям.

Смежные вопросы