In defense of the hosting company, the email service you get with
your hosting plan is not intended to be a high volume distribution
system for just your domain. You are buying a shared resource.
Dumping 1500 emails into the queue will impact everyones quality of
service. Now with that said they could have offered you an
alternative to using the shared mail resources, if they have one. You
could also move to a VPS product and not have deal with these
restrictions.
About the script:
I'm thinking that you will have to create a cron job to cycle every
hour and send the 200 emails. You will also have to:
1) flag records to be part of the group to be sent that day
2) Flag records that have been sent
3) use LIMIT in your SQL query to limit returned records to 200 and
marked as part of group to send and not sent.
You will also want to run your cron job at on odd time like 17
minutes after the hour so as not conflict with other cron jobs that
may be running hourly as part of the server.
Sincerely,
Mike
--
Mike Brandonisio * Web Hosting
Tech One Illustration * Internet Marketing
tel (630) 759-9283 * e-Commerce
[EMAIL PROTECTED] * http://www.jikometrix.net
JIKOmetrix - Reliable web hosting
On Jun 4, 2006, at 5:17 AM, Jim Byrne wrote:
> Hi,
>
> My hosting company has screwed up the usefulness of my newsletter
> script by putting a limit of 200 emails per hour on their server. I
> only have a couple of sites with newsletters that have more
> subscribers than that (approx. 400 and 1500 subscribers) - but when
> the send their newsletters many of their subscribers are no longer
> getting their email.
>
> I've spoken to the hosting company - but they are not interested in
> helping - other than saying I need to re-write my Perl script to send
> the emails out in batches.
>
> Can anyone tell me how I do that - or point me in the right direction?
> Currently I select the emails from a MySQL database and then send the
> emails. Here is the relevant bit from my script:
>
> # Connect to the database.
> my $dbh = DBI ->connect("$dbaseconnectstring", "$dbaseuser",
> "$password", {RaiseError => 1 })
> or die "connecting : $DBI:: errstr\n";
>
> my $sth = $dbh->prepare("select members.email, members.newsastext from
> members where members.receivemail = 'y' and members.accesslevel
> =9" );
> $sth->execute;
>
>
>
> while (my ($mailaddress , $newsastext) =
> $sth->fetchrow_array()) # keep fetching until
> # there's nothing left
> {
>
>
>
> ##############################
> ## remember to add buffer attrib when going live -odq
> ## This reduces the load on the server
> ##############################
>
> open(SENDMAIL, "|$sendmailpath -oi -t -odq")
> or die "Can't fork for sendmail: $!\n";
>
> # and so on....
>
> Any help would be appreciated.
>
> All the best,
> Jim
>
>
>
>
>
>
>
>
>
>
> ------------------------ Yahoo! Groups Sponsor --------------------
> ~-->
> Home is just a click away. Make Yahoo! your home page now.
> http://us.click.yahoo.com/DHchtC/3FxNAA/yQLSAA/CefplB/TM
> --------------------------------------------------------------------
> ~->
>
> The php_mysql group is dedicated to learn more about the PHP/MySQL
> web database possibilities through group learning.
> Yahoo! Groups Links
>
>
>
>
>
>
>
>
The php_mysql group is dedicated to learn more about the PHP/MySQL web database possibilities through group learning.
SPONSORED LINKS
| American general life and accident insurance company | American general life insurance company | American general life |
| American general mortgage | American general life insurance | Computer internet security |
YAHOO! GROUPS LINKS
- Visit your group "php_mysql" on the web.
- To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
- Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
