Strict Standards: Resource ID#18 used as offset, casting to integer (18) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#24 used as offset, casting to integer (24) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#26 used as offset, casting to integer (26) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#27 used as offset, casting to integer (27) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Как сделать рассылку с сайта пользователям [2]
ТвойWeb ТвойWeb
Качественный Европейский хостинг
Форум для чайников
 Чат на форуме      Помощь      Поиск      Пользователи


 Страниц (6): « 1 [2] 3 4 5 6 »   

> Без описания
TvoyWeb Администратор
Отправлено: 18 Февраля, 2005 - 15:03:07
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




ita пишет:
ч желательно указывать set_time_limit("0"Подмигивание

Улыбка Ну до этого еще дело пока не дошло. Я имею в виду, что даже пока цикла не видать.
Пусть чел напишет скрипт, мы посмотрим поправим... как говорится всему свое время.
victor
Учись.
victor пишет:
Я и хотел из текстового файла брать адреса получателя.

Вот и напиши скрипт, который вытащит из текстового файла адреса, создаст массив и прокрутив массив в цикле отправь письма.
Выложи что ты написал и посмотрим.
А вообще для начала напиши код который будет выдергивать адреса из текстового файла. ИМХО это как домашнее задание тебе.
 
 Top
ita
Отправлено: 20 Февраля, 2005 - 07:24:24
Post Id



Честный чайник


Покинул форум
Сообщений всего: 46
Дата рег-ции: Янв. 2005  
Откуда: dp.ua

Карма 0




Цитата:
Раскажи, пожалуста.

рассказую.. вобщем скрипт рассылки запускался из crontab в конкретное время.. а задачи для этого же crontab устанавливал другой скрипт. он считал кол-во подписчиков и в в зависимости от этого ставил определенное кол-во задач.. задачи отличались аргументами командной строки. по этим агрументам скрипт делал запрос к бд маскуль, выбирал подписчиков и отправлял им письмо.. делалось это раз в час 12 часов в сутки.. примерно так..
 
 Top
victor
Отправлено: 21 Февраля, 2005 - 05:11:08
Post Id



Full Member


Покинул форум
Сообщений всего: 177
Дата рег-ции: Февр. 2005  

Карма 0




Примерно так, я пропишу цикл просмотра файла:
CODE:
<?
int fopen ("mail.txt","r"); //Открываем файл в текущем каталоге

$file_array = file("mail.txt"); //Забирает по строчке из файла
if(!$file_aaray)

else
{
for (i=0; $i < count ($file_array); $i++)
{
print ("%s<BR>", $file_array[$i]);
}
}
int fclose ("mail.txt)
?>


Не судите строго, если что-то не так написал.

(Добавление)
Ой у меня там опечатка в 6 строке array
 
 Top
TvoyWeb Администратор
Отправлено: 21 Февраля, 2005 - 06:36:29
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




victor пишет:
int fopen ("mail.txt","r"Подмигивание; //Открываем файл в текущем каталоге

Зачем? Если
victor пишет:
$file_array = file("mail.txt"Подмигивание; //Забирает по строчке из файла

Вот смотри код....
CODE:
<?php
$file_array = file("mail.txt"); //Забирает по строчке из файла в массив
if(count ($file_array)){//если маасив не пуст то выводим построчно на экран
for ($i=0; $i < count ($file_array); $i++){
if (!empty($file_array[$i])){//если строка не пустая, обычно бывает что первая строка пуста, поэтому лучше проверить
printf ("%s<BR>", $file_array[$i]);//печатаем в данной строке именно printf а не print
// print'ом печатают так print $file_array[$i]."<BR>";
} else {
continue;
}
}
} else {
echo "В файле mail.txt нет записей";
}
?>
 
 Top
victor
Отправлено: 21 Февраля, 2005 - 11:25:10
Post Id



Full Member


Покинул форум
Сообщений всего: 177
Дата рег-ции: Февр. 2005  

Карма 0




Спасибо за науку.
Теперь мой файл будет выглядеть так:

CODE:
<?php
//Определяем необходимые переменные
$tomail = $file_array; //Кому
$subject = "Новости Регион45";//Тема сообщения
$messages = "ПРОВЕРКА";

/* Заголовок письма*/
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=windows-1251\r\n";
$headers .= "Content-transfer-encoding: 8bit\r\n";
$headers .= "Date: " . gmdate('D, d M Y H:i:s', time()) . " UT\r\n";
$headers .= "X-Priority: 3\r\n";
$headers .= "X-MSMail-Priority: Normal\r\n";
$headers .= "X-Mailer: PHP\r\n";
$headers .= "From: Администратор сайта <fonarik@zauralmedia.ru> \r\n";
$headers .= "Return-Path: <fonarik@zauralmedia.ru>\r\n";
$headers .= "Reply-To: Администратор сайта <fonarik@zauralmedia.ru>\r\n";

$file_array = file("mail.txt"); //Забирает по строчке из файла в массив
if(count ($file_array)){//если маасив не пуст то выводим построчно на экран
for ($i=0; $i < count ($file_array); $i++){
if (!empty($file_array[$i])){//если строка не пустая, обычно бывает что первая строка пуста, поэтому лучше проверить
printf ("%s<BR>", $file_array[$i]);//печатаем в данной строке именно printf а не print
} else {
continue;
}
}
} else {
echo "В файле mail.txt нет записей";
}

if(mail($tomail, $subject, $message, $headers)){//если функция mail() выполнена то выводим сообщение об успешной отправке
echo "Письмо успешно отправлено";
} else {//В противном случае, если возникли какие-то ошибки и письмо не было отправлено, выводим сообщение о неудачной отправке
echo "Во время отправки письма произошла ошибка<BR>Письмо не было отправлено!";
}
?>


Все правильно, или гдето допустил ошибку.
 
 Top
TvoyWeb Администратор
Отправлено: 21 Февраля, 2005 - 11:36:06
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




victor пишет:
Теперь мой файл будет выглядеть так:

А ты проверял его?
CODE:
$tomail = $file_array; //Кому

Что в этой строке есть $file_array ? Отвечу ничего!!! Мало того, PHP будет ругаться на неизвестную переменную.
Вобщем запусти скрипт и посмотри что выйдет.
 
 Top
victor
Отправлено: 21 Февраля, 2005 - 12:29:37
Post Id



Full Member


Покинул форум
Сообщений всего: 177
Дата рег-ции: Февр. 2005  

Карма 0




TvoyWeb
Не ругайся, у тебя же девиз: Я не волшебник, Я только учусь!
А у меня практика с этим дивизом.

А переменная
$file_array = NULL
Теперь правиль.
Потому что, ему надо придать первое значение 0, а потом он будет брать значение из файла. И еще как я понимаю эту строчку надо перенести
$tomail = $file_array; //Кому
и поставить перед:
if(mail($tomail, $subject, $message, $headers)

ЧТО ТЫ НА ЭТО СКАЖЕШЬ.
 
 Top
TvoyWeb Администратор
Отправлено: 21 Февраля, 2005 - 14:05:35
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




victor пишет:
эту строчку надо перенести

Вот....... мы уже малек продвигаемся..... Улыбка Есть контакт. Но все же скрипт абсолютно не верен.
Ты должен использовать функцию mail в твоем цикле for. А сейчас ты передаешь функции mail массив, что не верно. И потом зачем ты печатаешь на экране элементы массива (printf ("%s<br>", $file_array[$i])Подмигивание ? Для этого скрипта это не нужно.
 
 Top
victor
Отправлено: 21 Февраля, 2005 - 23:39:54
Post Id



Full Member


Покинул форум
Сообщений всего: 177
Дата рег-ции: Февр. 2005  

Карма 0




Но ведь mail состоит из четырех параметров.
Если внести функцию mail в цикл то она должна выглядеть так:
CODE:
<?php
//Определяем необходимые переменные
$file_array = NULL
$tomail = NULL
$subject = "Новости Регион45";//Тема сообщения
$messages = "ПРОВЕРКА";

/* Заголовок письма*/
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=windows-1251\r\n";
$headers .= "Content-transfer-encoding: 8bit\r\n";
$headers .= "Date: " . gmdate('D, d M Y H:i:s', time()) . " UT\r\n";
$headers .= "X-Priority: 3\r\n";
$headers .= "X-MSMail-Priority: Normal\r\n";
$headers .= "X-Mailer: PHP\r\n";
$headers .= "From: Администратор сайта <fonarik@zauralmedia.ru> \r\n";
$headers .= "Return-Path: <fonarik@zauralmedia.ru>\r\n";
$headers .= "Reply-To: Администратор сайта <fonarik@zauralmedia.ru>\r\n";

$file_array = file("mail.txt"); //Забирает по строчке из файла в массив
if(count ($file_array)){//если маасив не пуст то забираем построчно
for ($i=0; $i < count ($file_array); $i++){
if (!empty($file_array[$i])){//если строка не пустая, обычно бывает что первая строка пуста, поэтому лучше проверить
$file_array = $file_array[$i]

$tomail = $file_array;

(mail($tomail, $subject, $message, $headers)){
echo "Письмо успешно отправлено";
} else {
echo "Во время отправки письма произошла ошибка<BR>Письмо не было отправлено!";
}
} else {
continue;
}
}
} else {
echo "В файле mail.txt нет записей";
}
?>


ВОТ ТЕПЕРЬ ФУНКЦИЯ mail() в цикле. Или я опять что то перепутал.

(Добавление)
А в строке (mail($tomail, $subject, $message, $headers))
Надо указывать if


(Добавление)
туплю, надо
 
 Top
TvoyWeb Администратор
Отправлено: 22 Февраля, 2005 - 01:46:48
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




victor пишет:
Или я опять что то перепутал.

В принципе, если не счиать не проставленного if, ничего. Тоько есть лишние строки.
CODE:
<?php
//Определяем необходимые переменные
$file_array = NULL
$tomail = NULL
$subject = "Новости Регион45";//Тема сообщения
$messages = "ПРОВЕРКА";

/* Заголовок письма*/
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=windows-1251\r\n";
$headers .= "Content-transfer-encoding: 8bit\r\n";
$headers .= "Date: " . gmdate('D, d M Y H:i:s', time()) . " UT\r\n";
$headers .= "X-Priority: 3\r\n";
$headers .= "X-MSMail-Priority: Normal\r\n";
$headers .= "X-Mailer: PHP\r\n";
$headers .= "From: Администратор сайта <fonarik@zauralmedia.ru> \r\n";
$headers .= "Return-Path: <fonarik@zauralmedia.ru>\r\n";
$headers .= "Reply-To: Администратор сайта <fonarik@zauralmedia.ru>\r\n";

$file_array = file("mail.txt"); //Забирает по строчке из файла в массив
if(count ($file_array)){//если маасив не пуст то забираем построчно
for ($i=0; $i < count ($file_array); $i++){
if (!empty($file_array[$i])){//если строка не пустая, обычно бывает что первая строка пуста, поэтому лучше проверить
if(mail($file_array[$i], $subject, $message, $headers)){
echo "Адрес - ".$file_array[$i]." - статус ОК";
} else {
echo "Адрес - ".$file_array[$i]." - статус BAD";
}
} else {
continue;
}
}
} else {
echo "В файле mail.txt нет записей";
}
?>
 
 Top
Страниц (6): « 1 [2] 3 4 5 6 »
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0, скрытых: 0)
« Форумы »


Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только администраторы и модераторы могут отвечать на сообщения в этом разделе.
 



Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0383]     [ Gzipped ]