Я бы предложил найти способ перебрать и вспомнить, кому вы уже отправили, потому что если он станет большим списком людей, ваш сценарий может закончиться, и вам придется его перезагрузить.
Я сделал это однажды, используя AJAX, дал мне отличный способ отследить, где я находился в процессе отправки. Подсчитал, сколько людей отправляет почту, помещает идентификаторы в массив, имеет цикл javascript и делает отдельные вызовы на php-mail-страницу ...
-edit-
У вас может быть скрипт на php с простым циклом while, но тогда вам нужно добавить проверку в БД, чтобы посмотреть, было ли письмо уже отправлено одному человеку. Если сценарий превышает использование памяти, просто перезагрузите страницу, и она будет отправлена только тем, кто еще не получил ее ...