DW,
Ok, it's happening again, bad records every 50-100 in the lm_sendq table...
UPDATE: Ok, trying to track down a BAD uid in the lm_users table, it is NOT there, probably because my BOUNCE routine deleted the record in the middle of the night, or because that person REMOVED themselves in the middle of this lm_sendq batch (I ADDED my own Global Remove, so it's very likely that they removed themselves from another list and are no longer available for emailing).
DW, that's what's causing the problem, so you need to have a way - when running domail.php to see if the record is NOT there, and if it's not delete the record from lm_sendq and continue on, that way the mailing will go on as planned, maybe save the bad record in a table for later lookup to see the bad ones?
The only way I can continue is to delete the top record in the lm_sendq table and start the mailing again, when I do it's fine for 50-100 records, or maybe more, than blows up again, and I have to delete the top record again...
DW, do you have an idea of the code I could add to domail.php to solve this problem instead of seeing the error: Server said: 503 5.0.0 Need RCPT (recipient)?
SECOND UPDATE: I tried adding this code in admin.php
// BAS-MOD ADDED CODE TO SKIP BAD RCPTS
if($lastmsg == '503'){
fputs($ssock, "RSET\r\n");
$srvmsg = fgets($ssock,1024);
if($bugs){ echo "RSETmsg=$srvmsg<br>"; flush(); }
$error = 1; $skiptonext = 1;
if($bugs){ echo "Bad RCPT response ($email), skipping.<br><br>"; flush(); }
} else $error = '';
// END BAS-MOD
Right after this:
if ($lastmsg <> "250") {
$error = 1;
} else $error = '';
and before this:
if($lastmsg == '550'){
But it didn't seem to work properly, I thought it would skip the bad records and continue with sending? DW your thoughts?
THIRD UPDATE: I added this code
// BAS-MOD ADDED CODE TO SKIP BAD RCPTS
if($email=='') {
if($bugs){ echo "RSETmsg=$srvmsg<br>"; flush(); }
flush();
$error = 1; $skiptonext = 1;
} else {
Just After the loop begins for SMTP Pipelining, just before this code
fputs($ssock, "MAIL FROM: <$errmail>\r\n");
fputs($ssock, "RCPT TO: <$email>\r\n");
and it seems to work, DW, is that ok? Any problems with doing this, still I'd like to have a way to know how many are BAD when doing a mailing...