Как известно на бесплатных хостингах обычно не разрешают использовать скрипты и базы данных, которые зачастую неоптимизированны и очень грузят сервера.
Можно использовать такое решение нетолько для почтовых форм, но и для любых подобного рода задач.
Начнем. Нам необходимо два хостинга:
- на первом у нас только есть возможность использовать 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 = "[email protected]"; // 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 хостингах.
Постоянные ссылки
При копировании ссылка на TeaM RSN обязательна!
Оставить комментарий
Вы должны войти, чтобы оставить комментарий.