"ВОКРУГ САЙТА" www.vokrug-saita.ru

как создать сайт самостоятельно

Главная Рассылка Видеоуроки Автор сайта
Осторожно, мошенник!
Эта информация сохранит Вам деньги! >>>>>

Уроки PHP для начинающих


Как создать сайт на PHP - легко, быстро, ПРОФЕССИОНАЛЬНО?

Отправка электронной почты на сайте: функция mail()

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

Будем пользоваться формой регистрации нового пользователя и скриптом для её обработки, которые создавали здесь. Сделаем, чтобы на наш e-mail отправлялось сообщение о новом зарегистрированном пользователе.

Напомню, что скрипт в файле reg.php. Он нам и понадобится.

Откройте reg.php в Блокноте.

Отправка электронной почты в php осуществляется с помощью функции mail(), имеющей такой синтексис:

mail(адрес, тема письма, текст, заголовок)

Функция mail() отправляет текст и тему письма на указанный адрес. Необязательный параметр заголовок позволяет включить в сообщение дополнительные поля заголовка, например, поля From (От) и Reply-To (Ответить).

Сформируем параметры для функции mail. Для этого поместим адрес, тему письма и текст в переменные:

$address = "[email protected]"; /*адрес электронной почты, на который должно пойти сообщение*/
$subject = "Новый зарегистрированный пользователь на сайте"; /*тема письма*/
$message = "На сайте зарегистрирован новый пользователь: " .$name. ". Его пароль: " .$password. ". Его e-mail: " .$email;  /*текст сообщения, в который мы вставляем также переменные из формы регистрации*/

Надеюсь, Вы понимаете, что цель этого примера лишь продемонстрировать работу функции для отправки сообщений. Точно так же можно было бы отправить регистрационные данные на «мыло» новому пользователю. Кстати, так обычно и делается, а не выводят их на страницу. Но вернёмся к нашему примеру.

Все параметры для функции mail созданы, осталось их отправить. Делается это так:

mail ($address, $subject, $message, "Content-type:text/plain; Charset=windows-1251\r\n");

То есть, просто подставили каждую переменную на своё место. Теперь полный код файла reg.php:

<?php
if (($name == "") || ($password == "") || ($email == ""))
{
echo "<p>Форма заполнена не полностью! Вернитесь, пожалуйста, и заполните все поля формы!</p>";
exit ();
}
else
{
/*удаляем лишние пробелы из формы*/
$name = trim ($name);
$password = trim ($password);
$email = trim ($email);
$newfile = fopen($name, "w");
fwrite ($newfile, $password);
fwrite ($newfile, "\n");
fwrite ($newfile, $email);
fwrite ($newfile, "\n");
fclose ($newfile);
echo "<p>Поздравляем Вас, " .$name. ". Регистрация прошла успешно.</p>";
}
// далее реализуем отправку нового комментария на адрес админа сайта
$address = "[email protected]";
$subject = "Новый зарегистрированный пользователь на сайте";
$message = "На сайте зарегистрирован новый пользователь: " .$name. ". Его пароль: " .$password. ". Его e-mail: " .$email;
//далее прописываем функцию для отправки сообщения
mail ($address, $subject, $message, "Content-type:text/plain; Charset=windows-1251\r\n");

/*чтение из файла с помощью функции fread */
$file = fopen($name, "r");
$n = fread ($file, 100);
echo "<p>Ваш пароль: " .$n. ". Сохраните его.</p>";
fclose ($file);
/*чтение из  файла с помощью функции file и массива*/
$rfile = fopen($name, "r"); /*открываем файл только для чтения*/
$data = file($name); /* считываем открытый файл в массив $data*/
echo "Ваш пароль: " .$data[0]. ". Ваш электронный адрес: " .$data[1]. ". Сохраните свои данные."; //выводим из массива на страницу
fclose ($rfile); //закрыли файл
?>

Сохранили изменения. Обновили страницу в браузере. Зарегистрируйте нового пользователя через форму регистрации.

Теперь, чтобы проверить, отправлено ли сообщение, пройдите в Денвере по адресу WebSerwers – tmp - !sendmail. В папке !sendmail должно появиться письмо с сообщением о новом пользователе. Как Вы догадываетесь, на локальном сервере все письма попадают в папку !sendmail.

В файле reg.php есть код для вывода регистрационных данных на страницу в браузере. Логичней их отправить на адрес новому пользователю. Предлагаю Вам самостоятельно осуществить такую отправку, пользуясь только что рассмотренным примером.

Успехов.

Автор: Андрей Чернобай

P. S. Подпишитесь на безплатную рассылку Вокруг Сайта и получайте на свой электронный адрес новые уроки по созданию сайта.

SmartResponder.ru
Ваше имя: *
Ваш e-mail: *

P. S. 2.Как создать сайт на PHP?

Оставьте свой отзыв о статье:



Введите цифровой код с картинки*:


Комментарий добавил(а): Алексей
29-08-2011
15 час. 46 мин.

Комментарий:
Здравствуйте На страничке http://vokrug-saita.ru/php_mail.php вы описали регистрационный файл. Мне как раз необходимо организовать регистрацию на сайте путем отправки готовых регистрационных данных на е-майл. Но до конца не понятно, откуда скрипт забирает регистрационные данные и т.д.


Комментарий добавил(а): Андрей Чернобай
29-08-2011
18 час. 29 мин.

Комментарий:
Здравствуйте, Алексей. Скрипт забирает регданые прямо из формы, которую заполняет новый пользователь на странице регистрации.


Комментарий добавил(а): Андрей Чернобай
29-08-2011
18 час. 48 мин.

Комментарий:
Да, прошу прощения, вот перечитал статью на этой странице с комментарием и понял, что не указал, где начало этого скрипта. Оно здесь: http://vokrug-saita.ru/php_form_reg.php

"Вокруг Сайта"
подпишитесь и получайте на свой e-mail уроки, книги, статьи, скрипты, а также подарки и скидки на товары, продаваемые с сайта

SmartResponder.ru
Ваше имя: *
Ваш e-mail: *

СКАЧАТЬ
ВИДЕОКУРСЫ
СЕЙЧАС

Как записывать видео с экрана монитора и добавлять их на страницы своего сайта? - Скачать >>>


Готовы ли Вы расстаться с убеждением, что создать сайт на PHP - сложно? - Скачать >>>


Как правильно выбрать домен и хостинг? - Скачать >>>


Видеоуроки по HTML. Скачать >>>

PHP-песочница
Подписаться письмом


Карта
rss
Карта