По всем вопросам пишите на webmaster@info-pages.com.ua. Вы можете свободно использовать/размещать/перепечатывать статьи сайта всего лишь указав ссылку на источник.
Отправка письма (почты) с помощью PHP
Отправка письма (почты) с помощью PHP
Размещено: 27 июля 2008
В процесе работы на web-проектом рано или поздно встает вопрос, как сделать свой сайт более мобильным, чтобы мгновенно реагировать на все события происходящие на сайте (получение почты, добавление коментария/сообщения).
Это можно реализовать с помощью автоматической отправки письма на почтовый ящик.
Некоторые почтовые сервисы даже предоставляют услуги по отправке SMS на мобильный телефон уведомляя про получение письма.
Таким образом, Вы всегда будете оперативно получать информацию про все события на Вашем сайте.
Отправить письмо на почтовый ящик с помощью php можно использовав функцию "mail", например:
<?php
$message = '
<html>
<head></head>
<body>На сайте info-pages.com.ua на страничке <a href="http://info-pages.com.ua/e/13">http://info-pages.com.ua/e/13</a> добавлен новый коментарий такого содержания: "Здесь был Коля". Почтовый ящик автора:"коля@ящик" .
<br>
<form name="forma" method="post" action="http://info-pages.com.ua/index.php">
<input type=submit value="Удалить коментарий">
</form>
<br>
IP-адрес пользователя: 192.168.15
<form name="forma" method="post" action="http://info-pages.com.ua/index.php">
<input type=submit value="Блокировать IP-адрес">
</form>
<br>
Referer пользователя: http://info-pages.com.ua/e/12
</body>
</html>';
Давайте разберем как происходит отправка:
1. сервер выполняет функцию mail с задаными параметрами;
2. конструкция функции mail состоит:
@ (символ собаки означает не уведомлять про ошибки при отправке если таковые появятся) mail( "semen@mail.ru" (почтовый ящик на который мы отсылаем письмо), "info-pages.com.ua\n" (название письма), $message (заголовок который мы отсылаем почтовому сервису, здесь мы указываем формат письма (text/html) и кодировку (windows-1251)), $header (текст письма написаный в html коде) );
Web-программисты создают свои проекты, как правило, на локальном сервере, но для использования функции mail на локальном сервере Вы должны установить программу для приема почты.
Дело в том, что функция mail сама по себе почту не отправляет, она просто вызывает программу sendmail, которая в дистрибутив web-сервера Apache не входит. В данном случае я предлагаю Вам поступить таким образом, установить отправку писем на локальный хост и с помощью специальной программы их получать.
Поэтому, для организации отправки и получения почты на локальном сервере делаем следующее:
1. проверяем наличие в файле "php.ini" в блоке [mail function] следующих строк:
SMTP = localhost
smtp_port = 25
Если отсутствуют или закоментированы значит добавляем или активируем.
2. Устанавливаем программу для получения почты Test Mail Server Tool. Скачать с нашего сайта.
Настройка программы Test Mail Server Tool не требует специальных указаний, просто распакуйте и запустите. Далее проверьте номер порта (должен быть 25) и укажите путь для хранения получаемой почты.
Вот и все, теперь Вы можете полноценно отправлять и получать почтовые письма.
Семен Горбунков. Все права защищены, 2007-2008рр.
Статистика: всего статей 50, на модерации 0, комментариев 27, всего ссылок 10, новых 1, выполнено за 0.03 sec.