Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Рассылка писем.
 
 автор: 123php   (12.05.2005 в 11:47)   письмо автору
 
 

Здравствуйте! Подскажите, пожалуйста, как разослать письма средствами PHP? Есть база mysql с Электронными адресами.

   
 
 автор: Кузнецов М.В.   (12.05.2005 в 11:54)   письмо автору
 
   для: 123php   (12.05.2005 в 11:47)
 

А сколько адресов?

   
 
 автор: Saddam   (12.05.2005 в 11:54)   письмо автору
 
   для: 123php   (12.05.2005 в 11:47)
 

есть функция mailto чтоли называется..
я ей никогда не пользовался, но ты почитай о ней в справочнике каком-нибудь...

а дальше делаем выборку из базы и рассылаем в цикле...
а вообще зачем это надо?
прямо-таки тероризм почтовый :)

   
 
 автор: 123php   (12.05.2005 в 11:58)   письмо автору
 
   для: Saddam   (12.05.2005 в 11:54)
 

не терроризм))... Есть база зарегистрированных посетителей (около 500 может быть больше). Как правильно воспользоваться этой функцией?)

   
 
 автор: cheops   (12.05.2005 в 12:28)   письмо автору
 
   для: 123php   (12.05.2005 в 11:58)
 

После выборки из базы данных разослать письма при помощи функции mail
<?php
  $mal 
mysql_query("запрос на выборку");
  if(!
$mal) exit(mysql_error());
  while(
$mail mysql_fetch_array($mal))
  {
    
mail($mail['email'], "Тема""Текст сообщения");
  }
?>

   
 
 автор: 123php   (12.05.2005 в 14:05)   письмо автору
 
   для: cheops   (12.05.2005 в 12:28)
 

Скажите, получив письмо, адресат увидит только свой адрес или все адреса? Какой обратный адрес увидит адресат? Как сделать так, чтобы был указан мой адрес?

   
 
 автор: Кузнецов М.В.   (12.05.2005 в 15:13)   письмо автору
 
   для: 123php   (12.05.2005 в 14:05)
 

По поводу обратного адреса. Он увидит тот адрес, который Вы укажете в поле "From".

   
 
 автор: Кузнецов М.В.   (12.05.2005 в 15:18)   письмо автору
 
   для: 123php   (12.05.2005 в 14:05)
 

Адресат увидит все адреса, на который посланы сообщения в том случае если Вы их будете перечислять в (1) поле "То" через запятую, (2) будете писать их в поле "Сс".
Если нужно, чтобы адресат не видел, кому еще послано данное сообщение, нужно писать имена остальных адесатов в поле "Всс".

   
 
 автор: 123php   (12.05.2005 в 15:57)   письмо автору
 
   для: Кузнецов М.В.   (12.05.2005 в 15:18)
 

Был предложен следующий скрипт:


<?php 
  $mal 
mysql_query("запрос на выборку"); 
  if(!
$mal) exit(mysql_error()); 
  while(
$mail mysql_fetch_array($mal)) 
  { 
    
mail($mail['email'], "Тема""Текст сообщения"); 
  } 
?> 


Я еще не совсем разбираюсь в PHP, поэтому не понятно где это "to" и "сс", "всс"?

   
 
 автор: Кузнецов М.В.   (12.05.2005 в 19:40)   письмо автору
 
   для: 123php   (12.05.2005 в 15:57)
 

Отправка почты осуществляется функцией mail. Простой пример отправки сообщения выглядит следующим образом:

<?php
  $to 
ttt@softtime.ru;
  
$subject "Привет!";
  
$msg =  "Привет!";
  
mail($to$subject$msg )
?>

У функции есть два дополнительных параметра, с помощью которых можно указать дополнительные заголовки, к примеру, From.

<?php
  $to 
ttt@softtime.ru;
  
$subject "Привет!";
  
$msg =  "Привет!";
  
mail($to$subject$msg"From: ttt@server.com\r\n""Reply-To: ttt@server.com\r\n" );
?>

Здесь заголовок From - адрес отправителя, а заголовок Reply-To - адрес, который подставляется при нажатии кнопки "Ответить". Если указано поле From, то при
неуказанном поле Reply-to подставляется адрес, указанный в поле From.
Точно также Вы можете пересылать заголовки Cc - копия, в котором через запятую перечисляются получатели того же самого сообщения и Bcc - "слепая копия",- тоже самое, что и Cc, только получатели сообщения не видят адреса тех, кому еще были разосланы копии сообщения.
Если Вы отправляете письма в цикле, каждый раз подставляя в переменную $to новый адрес, то Вы каждому адресату будете отправлять свое письмо, - т.е. не копии, и, естественно, никто не увидит, кому еще оно было направлено, т.к. для каждого нового адреса Вы инициируете отправку почты заново.

   
 
 автор: Кузнецов М.В.   (12.05.2005 в 19:47)   письмо автору
 
   для: 123php   (12.05.2005 в 15:57)
 

Кстати, многие хостеры устанавливают ограничение на количество отправленных сообщений в единицу времени. К примеру, не больше 3-х сообщений в 5 минут. В этом случае в цикле надо поставить задержку.
Или можно не запускать функцию mail каждый раз в цикле, а один раз считать из базы все адреса и через запятую их подставить в $to, или в Bcc, в зависимости от того, что нужно.

   
 
 автор: 123php   (21.05.2005 в 19:14)   письмо автору
 
   для: Кузнецов М.В.   (12.05.2005 в 19:47)
 

Есть у меня файл csv, в нем адерса. на все эти адреса я хочу послать письмо, котором содержится только мой адрес и адрес получателя.
1. Я делаю запрос на выбор всех файлов. (В mysql я немного понял как это сделать, а как сделать в этой ситуации?).
2. Использую функцию мэйл.
Так?

   
 
 автор: krot   (21.05.2005 в 19:58)   письмо автору
 
   для: 123php   (12.05.2005 в 11:47)
 

пацаны чё за дела? при добавлении темы пишет 'ошибка при добавлении темы' !

   
 
 автор: cheops   (21.05.2005 в 21:28)   письмо автору
 
   для: krot   (21.05.2005 в 19:58)
 

Темы или сообщения?

   
 
 автор: cheops   (21.05.2005 в 21:36)   письмо автору
 
   для: krot   (21.05.2005 в 19:58)
 

Хм... только что добавил тествую тему вроде всё нормально - а чего пишется?

   
 
 автор: krot   (22.05.2005 в 14:10)   письмо автору
 
   для: cheops   (21.05.2005 в 21:36)
 

А пишет :
Ошибка добавления темы

Вернуться

Вернуться к списку тем
я уже и куки разрешил! всё равно е хочет!

   
 
 автор: cheops   (22.05.2005 в 14:31)   письмо автору
 
   для: krot   (22.05.2005 в 14:10)
 

А сессионные куки у вас разрешены?

   
 
 автор: krot   (22.05.2005 в 14:33)   письмо автору
 
   для: cheops   (22.05.2005 в 14:31)
 

сессионые куки - ето как? я знаю тока сесии и просто куки и они у меня разрешены!

   
 
 автор: cheops   (23.05.2005 в 01:54)   письмо автору
 
   для: krot   (22.05.2005 в 14:33)
 

Сессионные куки - это куки без установленного времени жизни, они живут только до конца сеанса, т.е. пока не выключается браузер и хранятся в оперативной памяти, а не на жёстком диске. В них обычно передаётся уникальный номер сессии.

   
 
 автор: krot   (22.05.2005 в 14:37)   письмо автору
 
   для: cheops   (22.05.2005 в 14:31)
 

ну неужели заработал!!!!!!!!!

   
 
 автор: 123php   (23.05.2005 в 16:04)   письмо автору
 
   для: krot   (22.05.2005 в 14:37)
 

Хостер ставит такие ограничения:
за 1 сессию можно послать не больше 10 писем.

Как правильно написать код рассылки с использованием текстового файла с эл. адресами?

   
 
 автор: cheops   (23.05.2005 в 23:09)   письмо автору
 
   для: 123php   (23.05.2005 в 16:04)
 

Какой критерий окончания сесиии? Т.е. при каких условиях можно отправлять вторые 10 писем?

   
 
 автор: 123php   (25.05.2005 в 09:12)   письмо автору
 
   для: cheops   (23.05.2005 в 23:09)
 

После окончания сессии, то есть, если отрапвлять через почтовую программу надо отправить 10 писем, потом создать еще 10 и отправить.

   
 
 автор: cheops   (25.05.2005 в 12:56)   письмо автору
 
   для: 123php   (25.05.2005 в 09:12)
 

Хм... я имел ввиду как ограничение срабатывает в PHP-коде, можно ли подождать при помощи функции sleep некоторое время или это не срабатывает?

   
 
 автор: 123php   (25.05.2005 в 15:23)   письмо автору
 
   для: cheops   (25.05.2005 в 12:56)
 

Често говоря, не знаю. Это важно?

У меня есть txt-файл, могу перевести его в csv-формат. На одном из форумов вы предложили следующий код:

<?php 
  
// Устанавливаем соединение с базой данных 
  
include "config.php"
  
// Читаем содержимое файла, помещая его содержимое 
  // в массив - каждая строка помещается в отдельный элемент 
  
$arr file("text.txt"); 
  
// Вообще нужно создать многострочный запрос, но проще 
  // просто прогнать в цикле 
  
foreach($arr as $linemysql_query("INSERT INTO tbl VALUES ('$line')"); 
?> 


Как правильно поставить здесь ограничения?

   
 
 автор: cheops   (25.05.2005 в 20:40)   письмо автору
 
   для: 123php   (25.05.2005 в 15:23)
 

Хм... но этоже код для работы с базой данных, а не с почтой?

   
 
 автор: 123php   (27.05.2005 в 13:11)   письмо автору
 
   для: cheops   (25.05.2005 в 20:40)
 

Выбираем информацию из файла и рассылаем.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования