while ($row = mysql_fetch_assoc($result)) { // For each row in queue, get the message to be sent to it $message_query = "SELECT subject,message,format FROM mailinglist_messages WHERE id = '$row[message_id]'"; $message_result = mysql_query($message_query) or die("Query failed : " . mysql_error()); $message_row = mysql_fetch_assoc($message_result); // send message to address and delete from queue $consume = new SMLmailer; $consume->mail_to = $row[address]; $consume->mail_from = $config['owner_email']; $consume->subject = $message_row[subject]; $consume->message = $message_row[message]; $consume->is_HTML = ($message_row[format] == "html") ? true:false; $consume->use_SMTP = ($config[use_SMTP] == 1) ? true:false; $consume->send(); // mail sent, remove from queue $delete_query = "DELETE FROM mailinglist_queue WHERE message_id = '$row[message_id]' AND address = '$row[address]'"; $delete_result = mysql_query($delete_query) or die("Query failed : " . mysql_error()); } // query queue for latest total $count_query = "SELECT COUNT(*) FROM mailinglist_queue WHERE send_after <= '$curr_unix_time'"; $count_result = mysql_query($count_query) or die("Query failed : " . mysql_error()); $count = mysql_fetch_row($count_result); echo $count[0]; } else { echo "ERROR: queue_size not set in config.inc.php."; }
{ $message = stripslashes($_POST[message]); $subject = strip_tags(stripslashes($_POST[subject])); } else { $message = $_POST[message]; $subject = strip_tags($_POST[subject]); } $subject = "Simple Mailing List Test Message: " . $subject; $ownertest = new SMLmailer; $ownertest->mail_to = $config['owner_email']; $ownertest->mail_from = $config['owner_email']; $ownertest->subject = $subject; $ownertest->message = $message; $ownertest->is_HTML = ($_POST[format] == 1) ? true:false; $ownertest->use_SMTP = ($config[use_SMTP] == 1) ? true:false; $ownertest->send(); if($ownertest->success) { $status = "<font color=Green>Your test message has been successfully sent to the list owner @ " .date('g:i A T n/j/Y'). "</font>"; } else { $status = "<font color=Red>Unable to send message. Check your server's error log for details.</font>"; } echo $status; ?>
$message = "Check out this great FREE PHP mailing list script I found, Simple Mailing List.\n"; $message .= "You can download it from http://www.notonebit.com/projects/mailinglist.\n"; $message .= "It's easy to setup, fast, has loads of features, and best of all, easy to use.\n"; foreach($friends as $friend) { if (!empty($_POST[$friend])) { $tellfriend = new SMLmailer; $tellfriend->mail_to = $_POST[$friend]; $tellfriend->mail_from = $config['owner_email']; $tellfriend->subject = "Check out this script: Simple Mailing List"; $tellfriend->message = $message; $tellfriend->is_HTML = ($_POST[format] == 1) ? true:false; $tellfriend->use_SMTP = ($config[use_SMTP] == 1) ? true:false; $tellfriend->unsub_message = ""; $tellfriend->send(); } } } $path = substr($_SERVER['PHP_SELF'],0,-14) . "process.php"; $form_code = <<<EOT <form method="POST" action="$path"> <input type="text" name="address" size="20"> <input type="submit" value="Submit" name="submit"><br> <font face="Tahoma" size="1">All subscribe/unsubscribe requests must be confirmed via email.</font> </form> EOT; $form_code = "<pre>" . htmlentities($form_code) . "</pre>"; ?>
$noqueue = new SMLmailer; $noqueue->mail_to = $config['owner_email']; $noqueue->mail_from = $config['owner_email']; $noqueue->mail_bcc = $subscribers; $noqueue->subject = $relay_subject; $noqueue->message = stripslashes($message); $noqueue->is_HTML = ($texthtml == "html") ? true:false; $noqueue->use_SMTP = ($config[use_SMTP] == 1) ? true:false; $noqueue->send(); } // Mailing or queueing complete. Send email to the address the message came from confirming receipt and processing $confirm = new SMLmailer; $confirm->subject = "Simple Mailing List - Relay Receipt"; $confirm->mail_to = $relay_from; $confirm->message = "Your message has been successfully received by Simple Mailing List "; $confirm->message .= "and is being processed."; $confirm->unsub_message = ""; $confirm->use_SMTP = ($config[use_SMTP] == 1) ? true:false; $confirm->send(); } // Mark the message for deletion (doesn't delete the message, just marks it) imap_delete($mbox,$val); } imap_expunge($mbox); imap_close($mbox); } ?>
while ($row = mysql_fetch_assoc($result)) { $bcc .= "$row[address],"; } $subscribers = substr($bcc, 0, -1); $to = $config['owner_email']; $noqueue = new SMLmailer; $noqueue->mail_to = $to; $noqueue->mail_from = $config['owner_email']; $noqueue->mail_bcc = $subscribers; $noqueue->subject = $subject; $noqueue->message = stripslashes($message); $noqueue->is_HTML = ($_POST[format] == 1) ? true:false; $noqueue->use_SMTP = ($config[use_SMTP] == 1) ? true:false; $noqueue->send(); if($noqueue->success) { echo "<p><b><font color=Green>Your message has been successfully sent and archived.</font></b> You can view the message in the <a href=archives.php>Archives</a>.</p>"; } else { echo "<p><b><font color=Red>Unable to send message. Check your server's error log for details.</font></b></p>"; } } // Delete the draft if one was used if(isset($_POST[draft_id])) { $delete_draft_query = "DELETE FROM mailinglist_drafts WHERE id='$_POST[draft_id]'"; $delete_draft_result = mysql_query($delete_draft_query) or die("Query failed : " . mysql_error());
$notify_unsub->unsub_message = ""; $notify_unsub->use_SMTP = ($config[use_SMTP] == 1) ? true:false; $notify_unsub->send(); } if($config['notify_user_on_unsub']) { $user_note = "You have been successfully unsubsribed from the $config[list_name] list."; $notify_user_unsub = new SMLmailer; $notify_user_unsub->subject = "$config[list_name] Unsubscription Confirmation"; $notify_user_unsub->mail_to = $email; $notify_user_unsub->message = $user_note; $notify_user_unsub->unsub_message = ""; $notify_user_unsub->use_SMTP = ($config[use_SMTP] == 1) ? true:false; $notify_user_unsub->send(); } } else { // one of the two denied conditions above occurred. $confirm_message = "Error processing request. Please contact $config[owner_email] for assistance.\n"; } } else { // No record found to confirm or unsubscribe in db $confirm_message = "Error processing request. Please contact $config[owner_email] for assistance.\n"; } echo $confirm_message; }