[FX.php List] Approach for user-generated mass mailings

Jonathan Schwartz jschwartz at exit445.com
Thu Jan 24 11:25:15 MST 2008


Hi Folks,

I have accumulated a stable of client projects that have generated a 
real secondary challenge for me.  I could use some advice.

Most of my projects are registration systems that have enabled client 
to collect their own customers records. ( Thats's good.) Once the 
primary need of collecting the user records is satisfied 
(registration), the secondary need of the client is always to be able 
to generate (legitimate) mass communications to the user base.  The 
nature of the email communications range from same emails to the 
entire base to custom emails to targeted subsets.

Until now, I have been the Email Master (?), and have personally 
accepted user's desired messages, created and sent the emails. 
(That's bad) .I can not afford to do so anymore, timewise. I'm 
working on automating this aspect of my services and allowing 
authorized users to create and send their own email "blasts".  I'm 
looking to validate my approach.  It's the primary step in the 
middle, marked with the *** that is of primary concern:

CREATION
Allow (authorized) user to create a Project
Allow user to compose text and html version of their message, saving 
with Project.
Allow user to apply HTML template, if html mail is used.
Allow user to send single emails to self for testing and proofing.


ASSIGN EMAILS TO PROJECT
Allow user to query user list and assign recipients to PROJECT
	***(Create records in PROJECT RECIPIENTS TABLE)***
Allow user to repeat above step with different criteria to create complete list
Allow user to massage resulting PROJECT RECIPIENTS able to remove 
undesired records.
Allow user to "Submit" email projects for sending...but not actually send.

SEND
I would review, approve and send email projects...and either send or 
request edits.
Once approved, send with PHPMailer.
Note: If all goes well, I would remove the approve step and allow 
users to send on their own.


Here's my question....

What is the best way to create the records in the PROJECT RECIPIENTS 
table as the user performs queries in the main user table and wants 
to "ADD"?  The quantity could range from 10's to 100's to 1000's. 
It's the 100's and 1000's that worry me.

Approach 1: For each found record, create a record, one at a time, 
in the new Project Recipients table.  I could have PHP loop thru and 
do the creation. Is this a problem with the larger quantities?

Approach 2: Same as above, but use FMP script to import.  We know 
what FMP scripts do to performance. If this is the best approach, I 
could add hardware dedicated to the function.  Would this insolate 
the performance issue of running scripts?

Approach 3: Vary the method depending on quantity of records in found set.

Approach 4:  Capture the query that created the desired recipient 
lists and re-query at time of send. This doesn't allow, however, the 
abillty for users to massage their lists.

What do you think?

Thx for your help.

Jonathan




-- 
Jonathan Schwartz
Exit 445 Group
jonathan at exit445.com
http://www.exit445.com
415-381-1852


More information about the FX.php_List mailing list