Как рассылать спам на php
Перейти к содержимому

Как рассылать спам на php

  • автор:

Списки рассылки

Этот раздел содержит вопросы о том как связаться с PHP сообществом. Самый лучший способ — списки рассылки.

  1. Есть ли какие-либо списки рассылки по PHP?
  2. Существуют ли какие-либо другие сообщества?
  3. Могу ли я начать свой собственный список рассылки PHP?
  4. Помогите! Похоже, я не могу подписаться/отписаться?
  5. Существует ли где-нибудь архив списков рассылки?
  6. О чем я могу спрашивать в списке рассылки?
  7. Какую информацию я должен включить при отправке в список?

Есть ли какие-либо списки рассылки по PHP?

Конечно! Существует множество списков рассылки на различные темы. Полный перечень списков можно найти на нашей странице » списков рассылки.

Наиболее общий список рассылки — php-general . Чтобы подписаться на него, отправьте пустое письмо на адрес » php-general-subscribe@lists.php.net. Чтобы отписаться, отправьте пустое письмо на адрес » php-general-unsubscribe@lists.php.net.

Также вы можете подписаться/отписаться, используя веб-интерфейс на нашей странице » списков рассылки, а инструкции по отписке включены внизу каждого сообщения из рассылки.

Существуют ли какие-либо другие сообщества?

Бессчётное количество по всему миру. На нашей странице » поддержки для примера есть ссылки на некоторые ресурсы (и информация о том, как узнать больше).

Могу ли я начать свой собственный список рассылки PHP?

Конечно! На самом деле, мы не только (бесплатно) разрешаем это, мы это поощряем! Помогая и делясь своим знанием и опытом по PHP с другими, вы поощряете рост и разработку как глобального сообщества PHP, так и самого языка.

Помогите! Похоже, я не могу подписаться/отписаться?

Если у вас возникла проблема с подпиской или отпиской от списка рассылки, возможно это потому, что программное обеспечение списка рассылки не может определить ваш правильный почтовый адрес. Если ваш адрес был joeblow@example.com , и вы пытаетесь подписаться на php-general, то вы можете послать запрос на подписку по адресу php-general-subscribe-joeblow=example.com@lists.php.net , или запрос на отписку по адресу php-general-unsubscribe-joeblow=example.com@lists.php.net . Для других списков рассылки используйте аналогичные адреса.

Самая частая причина, по которой люди не могут отписаться от наших списков рассылки, это использование пересылки почты. Например, если ваш электронный адрес danbrown@example.com, но вы подписались на список рассылки с адреса php-lists@example.com, который пересылает её вам на danbrown@example.com, то попытка отписать адрес danbrown@example.com не сработает, так как это адрес неизвестен нашей системе. Вместо этого вам нужно отписать тот адрес, на который приходит почта, в этом примере это php-lists@example.com.

Существует ли где-нибудь архив списков рассылки?

Да, список архивов можно найти на странице » списков рассылки. Вы также можете найти дюжины сайтов, которые архивируют и/или отдают содержание наших списков рассылок с помощью вашего любимого поисковика, задав запрос «архивы списков рассылок по php» (php mailing list archives).

Сообщения из списков рассылки также сохраняются как статьи новостей. Сервер новостей доступен по адресу » news://news.php.net/, новости с которого можно читать каким-нибудь новостным клиентом. Также есть экспериментальный веб-интерфейс для сервера новостей, доступный по адресу » http://news.php.net/.

О чем я могу спрашивать в списке рассылки?

С растущей день ото дня популярностью PHP, нагрузка на список рассылки php-general увеличилась и на сегодня составляет примерно от 75 до 200 и более сообщений в день. Поэтому, в интересах всех, используйте список рассылки только в крайнем случае, когда поиски во всех других возможных местах завершились неудачно.

Прежде чем отправить сообщение в список, пожалуйста, просмотрите этот FAQ и это руководство, может в них вам удастся найти решение вашей проблемы. Если там ничего не удалось найти, просмотрите архивы списка (смотрите выше). Если у вас проблема с установкой или настройкой PHP, пожалуйста, прочтите всю сопровождающую документацию и файлы README. Если после всего этого вам не удалось найти ответ, то ваш вопрос в списке рассылки более чем желателен.

Для получения наилучших ответов, (и чтобы не расстраивать ваших собратьев-программистов), пожалуйста, проверьте, что вы отсылаете свой вопрос в соответствующий список рассылки. Например, если у вас проблема с установкой PHP, вы должны отправить свой вопрос в список рассылки php-install . Предостережение: некоторые списки имеют похожие имена и совершенно различные назначения; вопрос по использованию PHP-скриптов в Windows должен быть отправлен в пользовательский список рассылки — Windows PHP users, а не список PHP разработчиков в Windows — Windows Internals list.

Хорошая идея, перед тем как задавать вопросы, прочитать статью » Как умно задавать вопросы.

Какую информацию я должен включить при отправке в список?

Сообщения типа «Не могу запустить PHP! Помогите мне! В чем дело?» совершенно бесполезны. Если у вас проблема с запуском PHP, вы должны указать операционную систему, версию PHP, как вы его получили (прекомпилированный, Git, RPM и т.п.), что уже сделали, на чем остановились, и, если есть, точное сообщение об ошибке.

Это также относится к любой другой проблеме. Вам необходимо указать, что вы уже сделали, на чем застопорились, что пытаетесь делать и, если есть, любые сообщения об ошибках. Если проблема с вашим исходным кодом, то надо включить часть кода, которая не работает, указав проблемную строку соответственно помещённым комментарием. Но не пытайтесь отправить больше, чем необходимо! Иначе ваше сообщение будет тяжело читать и большинство людей его просто пропустит. Если вы затрудняетесь решить какой объем информации достаточен, отправьте столько, сколько необходимо по вашей текущей проблеме, и приготовьтесь выслать больше информации по запросу.

Другая важная вещь, которую стоит помнить, это краткое изложение вашей проблемы в строке темы сообщения. Заголовки типа «ПОМОГИТЕ МНЕЕЕ. » или «В чем здесь проблема?» будут проигнорированы большинством читателей.

И на последок, для всеобщей пользы и особенно для вас, весьма рекомендуется прочитать статью » Как умно задавать вопросы.

User Contributed Notes

There are no user contributed notes for this page.

  • ЧАВО
    • Общая информация
    • Списки рассылки
    • Получение PHP
    • Вопросы по базам данных
    • Установка
    • Проблемы сборки
    • Использование PHP
    • Хеширование паролей
    • PHP и HTML
    • PHP и COM
    • Разные вопросы

    Email-рассылка по шаблону на PHP

    Если Вы не хотите платить различным сервисам, типа UniSender, за рассылку писем и у вас есть свой сайт на более-менее приличном хостинге, вы можете сделать свою собственную рассылку на e-mail.

    Для органиации своей e-mail рассылки нужна «база рассылки» и «программа рассылки». В качестве программы проще и удобнее использовать PHP скрипт. А базу нужно собирать из своих клиентов. Я категорически не рекомендую покупать базу для e-mail рассылок, т.к. вы очень быстро попадете в спам-лист и даже нормальные ваши клиенты не будут получать от вас писем.

    Здесь я расписал рекомендации, как делать рассылки, на что обращать внимание при составлении писем. Если у вас есть своя старая база и вы хотите ее актуализировать, т.е. оставить только «живых» пользователей, используйте сервис проверки e-mail.

    Данный пример создания своей рассылки на PHP уникален тем, что он без использования базы данных и каких-либо дополнительных библиотек. Вы один раз создаете свой красивый html-шаблон, на основании предложенного, загружаете из текстового файла или с помощью вставки в поле список адресов получателей, нажимаете «отправить» и вуаля! Все получили ваше письмо! Для того, чтобы избежать проблемы дешевых хостингов, которые ограничивают отправку большого кол-ва писем в минуту, в скрипте предусмотрен параметр «LIMIT_PER_MINUTES=20», т.е. скрипт будет отправлять не более 20 писем в минуту. Вы можете менять его в зависимости от ограничений вашего хостинга.

    Основные возможности скрипта

    • Не используется база данных
    • Используется шаблон письма, вставляются = тело письма, = ФИО получателя, = ссылка отписки
    • Встроенный парсер данных для получения списка рассылки
    • Кодируется кириллица в заголовке и в именах отправителя/получателя
    • Добавляется адрес для ответа
    • Прописываются корректные заголовки письма для снижения риска попадания в спам
        Отправить почтовое сообщение  

    Отправить почтовое сообщение

    Файл со списком получателей '.$fil.' не открывается, возможно неверный формат!'; //if(!empty($_POST['fcharset'])&&$_POST['fcharset']=='windows-1251')$mes=Convert::win2utf($mes); >elseif(!empty($_POST['to'])) < $to = $_POST['to']; >define('HASH_UNSUBSCRIBE','ootHK8EE58Ni/&E$HkcR'); define('LIMIT_PER_MINUTES',20); if(!defined('charset'))define('charset','utf-8'); $SERVER_NAME=preg_replace('/^https?:\/\//', '', str_replace(':443', '', $_SERVER['HTTP_HOST'])); $mes = isset($_POST['mes'])? $_POST['mes'] : '' ; $subj = isset($_POST['subj']) ? $_POST['subj'] : ''; $from_name = isset($_POST['from_name']) ? $_POST['from_name'] : ''; $from_mail = isset($_POST['from']) ? $_POST['from'] : 'sales@' /*'noreply@'*/ . $SERVER_NAME; $add_name = !empty($_POST['add_name']); $f=__FILE__; $f=substr($f,0,-3).'html'; if (is_file($f))$f_body = file_get_contents($f); if(!empty($to))< set_time_limit(1000); if (empty($mes))< echo "

    Пустое сообщение, будет отправлен сам шаблон!

    "; > ignore_user_abort(true); set_time_limit(1000); if (!empty($_POST['from'])) $GLOBALS['from'] = $_POST['from']; if (!empty($f_body))< $body = str_ireplace("", str_replace("\n", "\n", str_replace("\r", "", $mes)), $f_body); > else < echo "

    Нет файла шаблона письма!

    "; if(stripos($mes, '')===false)< $mes = "\n" . $mes . "\n"; > $body = str_replace("\n", "
    \n", str_replace("\r", "", $mes)); // сообщение всем > $subject = mime_header_encode($subj, charset); $to = preg_replace('/[ \t\r]+/', ' ', trim($to)); $to = preg_replace('/ +/', ' ', $to); $ss = explode("\n", $to); $ret = 0; // счетчик отправленых писем foreach ($ss as $name)if($name)< // цикл разбора получателей и отправки e-mail им // --------- здесть отсутствует часть скрипта ---------- // формирую адрес отписку, подставляю все в шаблон // --------- здесть отсутствует часть скрипта ---------- if( mail( $to, $subject, $body, $header) )< echo "Отправлено на " . $to_name .' '. "
    \n"; $ret++; > if(defined('LIMIT_PER_MINUTES') && 60>LIMIT_PER_MINUTES )sleep(60/LIMIT_PER_MINUTES); > echo "Отправлено " . $ret . " сообщений!
    \n"; > ?>

    Пример простейшего шаблона письма

    Данный пример шаблона письма email-рассылки основан на табличной верстке, которую понимают все почтовые клиенты. Шаблон имеет ограниченную ширину в 600 пикселей, чтобы помещаться в окно предварительного просмотра.

        a ul p  

    WEB-технологии

    ">Отписаться от рассылки

    Всего за 999 рублей (~11$) Вы можете приобрести готовый скрипт рассылки, который поддерживает весь функционал.

    Код скрипта реализован на PHP, полностью открытый и не использует никаких дополнительных библиотек.

    Соглашение по использованию платной версии:
    • Вы можете использовать полученный код в любых своих разработках, вы не обязаны указывать ссылку на источник.
    • Вы НЕ имеете права перепродавать её, размещать в свободном или ограниченном доступе, а также публиковать в любом виде.
    • Все остальные права сохраняются за автором.

    Рассылка E-mail писем по базе адресов (PHP скрипт)

    Рассылка E-mail писем по базе адресов (PHP скрипт)

    Массовая рассылка E-mail писем с рекламными материалами, предложениями, различными анонсами уже не один миллион раз доказала на практике свою эффективность. Продажи по E-mail имеют высокую эффективность и конверсию, по сравнению с конверсией из поискового или контекстного трафика.

    Такая задача возникла и у меня — мне нужно было разослать предложение о сотрудничестве множеству компаний. Поискав в интернете я нашел 3 решения данной задачи. Первое решение — покупка специальной программы, второе — воспользоваться специальными сервисами Email рассылки и третий, весьма сомнительный — заплатить за рассылку человеку, обладающему необходимыми для этого предприятия ресурсами.

    Ни один из способов меня не устроил: Первый и второй требует значительных затрат, а последний — весьма сомнительный. Мною было принято решение написать свой скрипт, который позволял бы мне делать безлимитные E-mail рассылки на адреса, которые находились бы в файле базы CSV – текстовая база данных.

    Когда скрипт был написан — я решил его проверить на практике. Эксперимент состоял в следующем — я собрал все E-mail адреса компаний определенного направления в 2GIS, их всего оказалось 1200 — это мебельные компании, у которых в 2GIS не был указан адрес сайта. Задача рассылки — предложить всем мебельным компаниям мегаполиса, у которых нет сайта предложить такую услугу.

    Результаты эксперимента:

    Было отправлено письмо на 1200 адресов. Всего я получил на сайт 300 переходов и 15 компаний в результате общения заказали у меня разработку сайта. Как видите, скрипт прекрасно работает, с учетом того, что на создание предложения и сбор писем у меня ушло пол дня.

    Технические моменты работы скрипта myMail PHP

    Скрипт, как видно из названия, работает на PHP. То есть для рассылок вам необходим, как минимум, средний хостинг с доменом (подойдет и тестовый домен). Я использую самый дешевый тариф на SpaceWeb.

    Программа для рассылки

    База E-mail адресов для рассылки

    Для массовой рассылки вам необходимо подготовить базу E-mail адресов в формате CSV. Это простой текстовый файл с расширением .csv, который можно редактировать или в электронной табличке или в текстовом редакторе:

    Создание базы для рассылки

    E-mail адреса разделяются запятой и переносятся на новую строку, это важно. Запятой адреса могут не разделяться, но перенос обязателен, если вы работаете с текстовым редактором. Количество адресов в базе — не ограничено.

    Шаблон HTML письма для рассылки

    Тут немного посложнее. Изначально вместо шаблона можно использовать простой файл с текстом предложения, но я так делать не рекомендую. Дело в том, что обычные письма пользователи просто удаляют, даже не прочитав. В архиве со скриптом вы найдете пример HTML письма, который я для вас подготовил. Если у вас не достаточно знаний в области создания E-mail предложений — советую вам воспользоваться услугами компетентных дизайнеров на фрилансе. Я беру в разработку такие проекты — одно письмо у меня стоит 800 рублей — дизайн и верстка. Эффективность красивых и ярких писем выше в разы, проверено на практике.

    Кроме того, вы можете связаться со мной и проконсультироваться по любому вопросу по рассылкам.

    Общие рекомендации для создания HTML писем:

    • Не используйте подключаемые стили или стили в теге style, так как такие элементы вырезаются почтовиками. Все стили пишите инлайново style=”blabla:bla” у каждого элемента;
    • Старайтесь верстать табличками;
    • Максимальная ширина — желательно не больше 600 пикселей;
    • Все, что касается письма должно находиться в одном HTML файле. Все картинки располагайте на вашем хостинге и делайте ссылки на них полным путем, вместе с доменом, на котором они находятся.

    Есть еще несколько нюансов, но думаю запрос в Google “Как создать HTML письмо” поможет вам в решении этой проблемы.

    Хостинг для рассылок

    В среднем, у всех хостеров одинаковые ограничения на рассылку писем.

    Уточните у вашего хостера, какие лимиты на отправку писем установлены. В среднем, у всех хостеров лимит писем составляет 1000 писем в час. Те письма из базы, которые не вошли в отправленную 1000 писем будут поставлены в очередь и по истечении часа будут отправлены. Отправлять повторно письма нет ни какого смысла, так как даже если у вас 10000 адресатов, все письма все равно будут доставлены через какое-то время.

    Данный скрипт вряд ли пригодится офисным работникам, которые занимаются бухгалтерией, учетом инвентаря компании и взаимодействуют с интерфейсом программ только на уровне «клацнуть кнопку и готово», но если вы знакомы с HTML кодом и хорошо работаете на компьютере — вы можете делать вполне качественные рекламные рассылки самостоятельно, тем самым привлекая новых клиентов.

    Скрипт бесплатен. Спасибо за внимание, друзья. Желаю успешных рассылок и большой конверсии.

    Премиум уроки от WebDesign Master

    Курс по созданию сайта от А до Я на Jekyll

    Создание сайта от А до Я. Комплексный курс

    Курс по созданию интернет-магазина на OpenCart

    Создание современного интернет-магазина от А до Я

    Фриланс для начинающих

    Я — фрилансер! Базовый курс для начинающих

    Другие уроки по теме «Инструменты»
    • Настройка VS Code для верстки
    • Simple Starter — простой стартер для верстки | Материалы урока
    • Делаем вкладки в проводнике Windows. Настройка QTTabBar от А до Я
    • Хостинг от А до Я: Сайты, базы, домены, SSL, SSH, sFTP, перенос, деплой, секреты, лайфхаки
    • Gulp 4 — Актуальное и исчерпывающее руководство для самых маленьких
    • Актуальный способ установки и настройки окружения Windows WSL для веб-разработки

    Своя рассылка на PHP

    В интернете есть много бесплатных сервисов. В том числе и услуги по рассылке писем подписчикам. Некоторые из них очень хороши. Но раз уж они бесплатны, значит, тут же в письмах появляется реклама. Да и немалые формы для подписки с логотипом представителя услуг многих не устраивают.

    Так почему бы не написать простенький движок для своей рассылки и отсылать письма своими силами?

    Давайте разберемся, что нам для этого потребуется.

    Для того чтоб посетители имели возможность подписаться на вашу рассылку, необходима форма для ввода адреса электронной почты. После ввода адрес надо запомнить. Давайте адреса будем сохранять в файле maillist.txt по одному адресу в строчке. После того, как адрес будет сохранен, давайте выведем соответствующее сообщение и отобразим форму для подписки еще одного адреса или удаления существующего. Вот собственно почти и все. Осталось добавить только возможность отправки писем. Для безопастности, давайте на возможность отправки писем поставим пароль — необходима форма для ввода пароля. Далее потребуются формы для заполнения адреса отправителя и темы, а также для самого текста. Ну и, наконец, сам скрипт, который будет отсылать письма. А теперь все по порядку.

    Форма для ввода адреса электронной почты будет состоять только из окна для ввода адреса и кнопки для подтверждения:

    Итак, в окне для ввода текста, с именем email и видимой длиной в 30 символов, будет вводиться адрес электронной почты. После нажатия на кнопку с надписью подписаться, адрес будет передан скрипту ras.php для занесения в базу рассылки.

    Далее давайте рассмотрим скрипт ras.php, который будет сохранять адрес почты в файле, выводить сообщение о результате и формы для подписки и отписки. Скрипт можно исполнить совсем просто — сохранить адрес, вывести соответствующее сообщение. Но могут возникнуть проблемы: кто-то может случайно подписаться несколько раз, кто-то может допустить опечатку и ввести в поле адреса недопустимый символ. В таком случае база рассылки будет загрязняться, а неверные адреса станут приводить к ошибкам в работе скрипта. Вывод ясен — перед сохранением адреса следует проверить его на соответствие стандартам имен адресов электронных почтовых ящиков, а также на наличие в базе рассылки. Для того чтоб не рассматривать код по частям, я дам комментарии в самом коде:

    $file = "maillist.txt"; // файл, содержащий адреса error_reporting(0); // запрещаем вывод сообщений о возможных ошибках function test_mail($char) // функция, проверяющая реальность адреса < if (preg_match("/^[_\.0-9a-z-]+@([0-9a-z][-0-9a-z\.]+)\.([a-z]$)/", $char)) return true; return false; > // получаем введеный в форму адрес с символами в нижнем регистре $email = trim(strtolower($email)); function copy_mail($char) // проверяем, есть ли такой адрес в базе < global $file; $list = file($file); for ($i = 0; $i < sizeof ($list); $i++) if ($char == trim($list[$i])) return true; return false; >echo "
    "; if (is_file($file)) // далее проверяем адрес вышеописаными функциями < $maillist = file($file); if (!$email == '') < if (test_mail($email)) < if (!copy_mail($email)) < $maillist[] = "\n$email"; print "E-mail: $email добавлен базу рассылки
    "; > else print "E-mail: $email уже есть в базе
"; > else print "E-mail: $email не сушествует
"; > else print "
"; > else print "Не найден файл $file ! Пожалуйста сообщите мне о ошибке."; // выводим на экран форму с предложением подписки и отписки echo "
Подписаться на рассылку"; echo "Введите mail: "; echo "


"; echo "Отписаться от рассылки
Введите mail:"; echo " "; // если пользователь решил отписаться - удаляем введеный адрес $flag = false; $fw = fopen($file, "w"); for ($i = 0; $i < sizeof ($maillist); $i++) if (trim(strtolower($delmail)) == trim(strtolower($maillist[$i]))) < if (!$delmail == '') < print "
$delmail удален из базы рассылки
"; $flag = true; > > else fputs($fw, $maillist[$i]); // введеного адреса в базе нет fclose($fw); if (!$delmail == '') if (!$flag) print "
$delmail не найден в базе рассылки
";

Вот наш код сохранения и удаления адресов готов.

Теперь надо позаботиться о средствах отправки почты. Не будем же мы через Outlook отсылать. Как уже говорилось, защитим возможность отправки паролем, который будем вводить на специальной форме:

Поле для ввода с именем pass и будет служить для ввода пароля. После нажатия на кнопку с надписью войти, пароль будет передан скрипту out.php:

$subject = "Рассылка моего сайта"; // тема рассылки $fromemail = "мое@мыло"; // ваш адрес (для ответов) $file = "maillist.txt"; // список адресов подписчиков $password = "secretpassword"; // ваш пароль для рассылки if ($_POST['pass'] == $password) // если пароль ввели правильный // то выводим форму с полями для ввода: // адрес отправителя, текст письма, тело письма // кнопку для отправления // после нажатия на кнопку, передаем данные скрипту send.php < echo "
"; echo "адрес отправителя

"; echo "тема письма
"; echo "
текст письма:
"; echo "
"; print "В базе". sizeof($maillist) ." адресов

"; for ($i = 0; $i < sizeof ($maillist); $i++) print $maillist[$i]. "
"; > // если пароль неверный - просим ввести еще раз else echo " ";

Осталось рассмотреть только один скрипт — тот самый, который будет отсылать почту:

$odr = "\n\n\n Для отказа от подписки воспользуйтесь ссылкой\n"; $homepage = "http://адрес.сайта/ras.php"; error_reporting(0); $subject = $HTTP_POST_VARS["subject"]; $body = $HTTP_POST_VARS["body"]; $subject = stripslashes($subject); $body = stripslashes($body); $file = "maillist.txt"; $maillist = file($file); print "В базе". sizeof($maillist) ." адресов
"; for ($i = 0; $i < sizeof ($maillist); $i++) < #echo($maillist[$i]."
"); mail($maillist[$i], $subject, $body ."$odr $homepag?delmail=$maillist[$i]", "From: "); > echo "Готово!";

Тут все просто: получаем значения, введенные в предыдущюю форму, и в цикле отправляем их по очереди на каждый из адресов.

  • Универсальная рассылка почты на PHP по MySQL базе пользователей
  • Вставка изображения в письмо на PHP
  • Отправка почты по шаблону на PHP
  • Удалить все сообщения из почтового ящика
  • Настройки SPF и DKIM чтобы письма не попадали в спам
  • email рассылка по шаблону на PHP

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *