views:

66

answers:

3

hi folks, my client needs a mailing list in their site. the idea is that users can subscribe to get newsletters or announcements. i expect the list to contains hundreds of users, not tens of thousands.

i have not done this before (only single messages like "thank you for registering") my initial idea was sending each message to all users in 1 mail() call, using BCC for each user or sending it separately using a loop. but then a friend mentioned the possible problem of the server blocking a mail containing 1000 bcc's and also the a page timeout preventing the above mentioned loop from being fully executed.

are there any other issues to consider? any possible solutions? should i use tools like PHPList, Swiftmail to phpmailer?

thanx in advance :-)

A: 

If you can afford it, something like Mailchimp may be your best option. They'll handle your list for you, as well as the nitty-gritty involved in formatting, and of course all the technical side.

Skilldrick
+1  A: 

I suggest you use an existing mailing list program. There are a bunch of them out there, free and otherwise, and they've been around a long time. Most of the problems are solved as well as they're going to be solved - there's no use resolving them.

If you're running this on your own server, one of your biggest concerns will be getting flagged as a spammer. Related, but also a concern in its own right, is having your email server and dns entries absolutely correct. You will constantly face issues where email does not get to one particular email address or one particular domain. You'll find you've been blocked by medium_sized_isp.com because you don't have an SPF record set up or something like that. In other words, doing this will entail a number of system administration tasks and issues in addition to programming tasks. Be sure to discuss/contract/bill accordingly.

Scott Saunders
I completely agree -- unless you enjoy arguing with DNS records and mail server settings, you're much better off using a third-party mail server to reliably send mail.
Carl Russmann
A: 

On a purely technical level, PEAR has a module called Mail_Queue which is good for things like this. Each recipient gets a message sent directly to them. One advantage of doing it that was is you can insert tracking variables, personalization, etc. into the message.

Sonny