Рассылка

  • Автор темы vano793
  • Дата начала
V

vano793

#1
Код:
<?php
$subject = "Тема письма";
$mail_msg = "Текст письма";
$file=fopen("mails.txt","r") or die( 'Ошибка при чтении файла со списком e-mail' );
while( !feof($file) ){
$addr = fgets( $file );
mail($addr, $subject, $mail_msg);
}
fclose( $file );
echo 'отправил';
?>
 

vital

Больной Компом Детектед
29.01.2006
2 432
33
#2
В письма надо добавлять специальные заголовки, иначе их просто как спам считают. Описывать мне лень, да и гугл тут не плохо поможет, а так.. Думаю, там все очевидно.
PHP:
<?php 
if(substr(PHP_OS, 0, 3) == "WIN") 
$n = "\r\n"; 
else 
$n = "\n"; 

$to = 'email@mail.ru';	  
$from = 'email@yandex.ru'; 
$subject = 'Табе пакет'; 
$subject = '=?utf-8?b?'. base64_encode($subject) .'?='; 
$headers = 'Content-type: text/plain; charset="utf-8"'. $n; 
$headers .= 'From: <'. $from .'>'. $n; 
$headers .= 'MIME-Version: 1.0'. $n; 
$headers .= 'Date: '. date('D, d M Y h:i:s O') . $n; 
$message = 'Вот такое вот письмо';
mail($to, $subject, $message, $headers, '-f'. $from );
?>
 
V

vano793

#3
vital
Мне нужно что бы брало с txt а не одному отправляло )
 

vital

Больной Компом Детектед
29.01.2006
2 432
33
#4
Омг.. Вот и зачем так делать? Создал тему пусть бы и была, даже если иразобрался сам. Пфф..

Добавлено:
Мне нужно что бы брало с txt а не одному отправляло )
Я тебе написал как письмо правильно отправлять. А адреса в цикле подставлятиь ты и сам умеешь, исходя из первого поста.
пС.
Такие вещи надо делать в несоклько потоков, иначе при большом кол-ве адресов скрипт просто не отработает.
 

vital

Больной Компом Детектед
29.01.2006
2 432
33
#6
Ну там очень много всего, это не в форумном посте объяснять.
Кратко:
PHP многопотолчность не поддерживает, но есть способы ее эмуляции.
1. Асинхронные\неблокирующие сокеты
2. Форки
3. Еще что-то, не помню.
Про все это - Загугли Эмуляция Многопоточности в PHP
Вот, а конкретно для твоего случая - это классическая задача. На хабре даже есть готовый класс который Легко гуглится по запросу выше рассылает письма в несколько "потоков".