while($row = mysql_fetch_assoc($res)) { # $nam = $row[nam]; # $status = $row[status]; # $login = $row[login]; # $post= $row[post]; # $sta= $row[sta]; # # $to= "$nam <$login>" . ", " ; //обратите внимание на запятую # $to .= "$nam <$login>"; # # /* тема/subject */ # $subject = "Здравствуйте $nam, "; # # /* сообщение */ # $message = 'бла бла бла # '; # # /* Для отправки HTML-почты вы можете установить шапку Content-type. */ # $headers= "MIME-Version: 1.0\r\n"; # $headers .= "Content-type: text/html; charset=utf-8\r\n"; # # /* дополнительные шапки */ # $headers .= "From:Мой сайт <test@gmail.com>\r\n"; # # # /* и теперь отправим из */ # mail($to, $subject, $message, $headers); } Только отправлять по сто "майлов" не выйдет скорей всего, заблокирует злой админ твою рассылку, если с ним это все не оговорено и у тебя обычный хостинг. Возможно, не все хостинги ограничивают рассылку писем, но у меня, например, оговорено про 4 письма в минуту.
ShamahN Ниасилил. Apple Эт да, с циклом тут по-индусски выглядит. Только вопрос про массовую отправку и лимит не раскрыт
Padaboo уже чтото.. только причем тут скрытие адреса отправителя к многократному отправлению? Или я еще не полностью асилил?))
Уже подсказывали - в цикле строй одну строку $to, после цикла отправляй через mail. С каждым постом твои куски кода кардинально меняются.
поменял логин на емаил, чтоб понятней было Блин, Апельсин, чего то не получается. С циклами не очень-то знаком, буду поискать
AMБАЛ функцию mail вообще не заноси в цикл. Твоя задача собрать в переменную $to все адреса через запятую, куда будешь отправлять. Вот для этого и используй цикл. Как будет готова переменная эта - с помощью mail уже подставляешь $to (там все адреса) и улюлю твои имейлы полетели.
PHP: <? $sql = mysql_query ('select * from subscriptions limit 100'); $to=''; while ($row = mysql_fetch_assoc($sql)){ $to.=$row['email'].','; } $to=substr($to, 0, -1); mail ($to, 'Subscription', 'Text'); ?> как то так,если что сами поправьте в последнее время отвык от php
ПОправлю =) PHP: <?php // ( .. Code ) $emails = array(); while($row = mysql_fetch_object($sql)) { $emails .= $row->email; } // Send mail(implode(",", $emails), 'Subject', 'Message'); ?>
совсем другой подход)все аккуратно и лаконично но боюсь породит еше вопросы) зы: как я тебе завидую, сижу изучаю ядро unix в котором все на C написано ^^
3 - лимит принимает 2 числа по моему с какой строки и сколько 5- где дальше по коду используется $res? 8-при каждой итерации цикла вы переопределяете переменную как пустой массив? 13,14,15,16,17 ячейка массива указывается вроде как в ординарных кавычках $row['nam']; 22 в $to вы присваиваете только последний полученный $row['nam']; aka $nam из цикла вроде как 29,30 поправьте в качестве аватара разрешены только личные фото
1. $emails должно быть массивом, а не строкой 2. все эти адреса должны быть в Bcc. Иначе все адрессаты будут видны получателю письма. 3. 2All: Когда будет пример рассылки по одному письму с sleap, отметками в бд, заголовками и всякими вкусностями?
ХА-ХА я Всех победил!!!!!!!!!!!!!!!!!!!!!!!! Всем кто участвовал до этого поста, пишите, скину код в личку.