Форма обратной связи на html-странице

kolobok74
На сайте с 29.01.2006
Offline
267
904

Есть html-страница. На ней простая форма из десятка полей и кнопка отправить.

Как сделать, чтоб по клику форма приходила к админу на мыло?

Естественно, минуя почтовые клиенты посетителя (как в случае со ссылкой mailto:)

grey109
На сайте с 15.06.2005
Offline
160
#1

Стучись в аську - помогу.

tommy-gung
На сайте с 22.11.2006
Offline
287
#2

Начнем. Нам необходимо два хостинга:
- на первом у нас только есть возможность использовать html + javascript (клиентские языки). Пусть будет site1.ru
- второй хостинг должен поддерживать php, или другой серверный язык. Данный пример для языка php, назовем site2.ru

Допустим есть форма на сайте site1.ru. Страница с формой site1.ru/form.html

Пусть будет такой код формы (форма взята, как пример)


<form action="http://site2.ru/mail.php" method="post">

Ваше имя
<input name="name" size="40" type="text">

Ваш E-Mail
<input name="email" size="40" type="text">

Сообщение

<textarea rows="20" name="message" cols="55"></textarea>

<input value="Отправить!" type="submit" name="submit">
</form>


Можно добавить проверку формы перед отправкой на обработку на сервер.

Делаем на втором сайте site2.ru обработчик mail.php

Код простого обработчика

<?php
$to = "mail@mail.ru"; // e-mail, на который будут приходить письма
$subject = "Письмо с сайта site1.ru"; // тема письма
$text = "Имя: ";
$text .= (!empty($_POST['name'])) ? $_POST['name'] : "неизвестно";
$text .= "nE-mail: - ";
$text .= (!empty($_POST['email'])) ? $_POST['email'] : "неизвестно";
$text .= "nnn".$_POST['message'];
$headers = "Content-type: text/plain; charset=windows-1251rn";
if(mail($to, $subject, $text, $headers)) {
header("Location: http://site1.ru/ok.html");
exit;
} else {
header("Location: http://site1.ru/error.html");
exit;
}
?>


Создаем еще дополнительные страницы ok.html и error.html, которые содержат сообщения об удачной или неудачной отправке письма.

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

Можно использовать, как альтернативу на бесплатном или только с поддержкой html хостингах.

отсюда

если сервер поддерживает php еще проще

Здесь не могла быть ваша реклама

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий