|
Отправка сообщений с сайта
Оказывается, не все знают, как реализовать “Обратную связь” на PHP, а это очень хорошо описано в учебниках по PHP, естественно можно и не только реализовывать эту самую обратную связь – но и любую отправку каких либо email сообщений с сайта.
В данном “мануале” я покажу, как реализовать один из вариантов отправки сообщений с сайта.
Приступим:
Необходимо сделать форму отправки сообщения, если уж показывать пример – то явно не аналогично той литературе, которую вы не решились прочесть или не смогли понять – а значит всё указать пошагово, описания того как сделать форму там конечно нет…
Вот простая форма, которая нам понадобится, оформление остаётся за вами.
<form method="POST" action="">
<p><input type="text" name="a1" size="20"></p>
<p><input type="text" name="a2" size="20"></p>
<p><textarea rows="2" name="a3" cols="20"></textarea></p>
<p><input type="submit" value="Submit"></p>
</form>
Создаём файл для скрипта, к примеру, mail.php
Делаем простую разметку:
<?
if($_GET[pg]==’’){ # Вставим нашу форму
echo ‘<form method="POST" action="?pg=send">
<p><input type="text" name="a1" size="20"></p>
<p><input type="text" name="a2" size="20"></p>
<p><textarea rows="2" name="a3" cols="20"></textarea></p>
<p><input type="submit" value="Submit"></p>
</form>’;
}
# Вставляем скрипт формирования и отправки сообщения
# Я буду использовать HTML шаблон, вы для придания сообщению вида, можете повторить за мной
if($_GET[pg]==’send’)
{
$to .= "<ваш@email_адрес.ru>"; # оставив <скобки>, меняем ваш@email_адрес.ru на адрес, куда будут отсылаться письма с сайта, то есть укажите свой email адрес.
$subject = "Сообщение с сайта"; # Тема приходящего письма
# Простой HTML шаблон для сообщения
# Где мы вставляем полученную из формы информацию
# $_POST[a3] – текст сообщения
# $_POST[a1] – тема допустим
# $_POST[a2] – в данном примере обратный адрес
$message = '<table border="0" width="100%" cellspacing="0" cellpadding="5">
<td width="100%" bgcolor="#FFF1B9">Тема: '.$_POST[a1].'<br>От: '.$_POST[a2].'<br><br>'.$_POST[a3].'<br><br></td>
</table>';
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=windows-1251\r\n"; # Определите в какой кодировки будет приходящая почта.
$headers .= "From: <$_POST[a2]>\r\n"; # Поле обратного адреса, сразу будет возможность ответить без копи\паста мыла, типа ускорим процесс :)
# Ну и наконец – сам скрипт отправки
mail($to, $subject, $message, $headers);
После отправки хорошо бы перекинуть куда-нибудь пользователя, дабы не начал обновлять специально или случайно страницу и не завалил нас почтой.
header("Location: index.php"); # Определите Url куда будет перемещён после отправки пользователь.
}
?>
Вот и всё, ничего сложного и заумного.
Сохраняем – заходим на файл скрипта – радуемся :)
|