Scorpion, сами сообщения не дублируются?
Str@nnik, сообщение дублируется, т.е. приходит 2 сообщения... а к-во вложений по разному бывает 2-3-4 вложений
Scorpion, ну попробуй таким образом
+ (+/-)
<?php
$emails = file('base.txt');
$total = count($emails);
if (isset($_POST['submit'])) {
$subject = isset($_POST['subject']) ? trim(htmlspecialchars($_POST['subject'])) : null;
$text = isset($_POST['text']) ? trim(htmlspecialchars($_POST['text'])) : null;
if (empty($text) || empty($subject)) {
echo '<p>Заполните все поля! <a href="?">Назад</a></p>';
} else {
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$headers .= 'To: user <user@example.com>' . "\r\n";
$headers .= 'From: От кого <server@example.com>' . "\r\n";
for ($i = 0; $i < $total; ++$i) {
mail($emails[$i], $subject, $text, $headers);
}
echo '<p>Рассылка успешно завершена! <a href="?">К форме</a></p>';
}
} else {
echo '<form method="post">
<p>Тема рассылки:</p>
<input type="text" name="subject">
<p>Текст рассылки:</p>
<textarea name="text"></textarea><br>
<input type="submit" name="submit" value="Разослать">
</form>';
echo '<p>Всего email-получателей: ' . $total . '</p>';
}
Str@nnik, Спасибо) попробую и отпишусь))
Str@nnik, почему for если есть foreach ? Цикл перебора массивов.
ValekS, Хз, с головы вылетело
# ValekS (12.11.2015 / 23:14)
Str@nnik, почему for если есть foreach ? Цикл перебора массивов.
Предположительно - чтобы оправдать вызов
$total = count($emails);
который требуется для вывода кол-ва
з.ы.шучу ежели что )
Str@nnik, Кстати, существует ещё и такой синтаксис
for ($i = 0, $total = count($emails); $i < $total; ++$i) {
mail($emails[$i], $subject, $text, $headers);
}
Не путайте место написания count() - если написать в первом выражении условия(как показано выше), то count() вызовется только один раз.