Форма отправки данных на почту с сайта html и php

Автор Макс Пуля

Форма отправки данных на почту с сайта html и php Форма отправки данных на почту с сайта html и php

Форма обратной связи или форма отправки заявки очень важна для сайта. Полностью рабочий код отправки данных на почту с сайта

В Интернете очень много подобных форм, но, мягко говоря, не все они рабочие. Трудно найти рабочий код отправки данных с сайта. Я нашел и немного его улучшил. Это только код! Стили Вам нужно будет подключить свои - это очень просто!

Первым делом Вам нужно создать пустой файл с именем send.php и не забывайте о кодировке, которую Вы используете. Удобнее всего использовать Notepad++ для работы с кодом.

В пустой файл send.php вставляете следующий код:

<?php

if(isset($_POST['submit'])){
$to = "Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.;; // Здесь нужно написать e-mail, куда будут приходить письма
$from = $_POST['email']; // this is the sender's Email address
$first_name = $_POST['first_name'];
$subject = "Форма отправки сообщений с сайта";
$subject2 = "Copy of your form submission";
$message = $first_name . " оставил сообщение:" . "\n\n" . $_POST['message'];
$message2 = "Here is a copy of your message " . $first_name . "\n\n" . $_POST['message'];

$headers = "From:" . $from;
$headers2 = "From:" . $to;

mail($to,$subject,$message,$headers);
// mail($from,$subject2,$message2,$headers2); // sends a copy of the message to the sender - Отключено!
echo "Сообщение отправлено. Спасибо Вам " . $first_name . ", мы скоро свяжемся с Вами.";
echo "<br /><br /><a href='">https://epicblog.net'>Вернуться на сайт.</a>";

}

?>

<!--Переадресация на главную страницу сайта, через 3 секунды-->
<script language="JavaScript">
function changeurl(){eval(self.location="https://epicblog.net/index.php");}
window.setTimeout("changeurl();",3000);
</script>

Отлично! Пол дела сделано!

Теперь Вам нужно ставить html код на свой сайт, чтобы форма обратной связи появилась. Вот этот код:

<form action="send.php" method="post">

Ваше имя <input type="text" name="first_name"><br>
Email: <input type="text" name="email" required placeholder="Обязательное поле"><br>
Сообщение:<br><textarea rows="5" name="message" cols="30"></textarea><br>
<input type="submit" name="submit" value="Submit">
</form>

Как видите, форма подключается к файлу send.php. По умолчанию файл send.php нужно поместить в корень Вашего сайта или прописать к нему другой путь.

Эта форма отправки данных полностью рабочая и проверена. В противном случае, нужно смотреть настройки хостинга.

Исходники формы отправки данных на почту с сайта html и php по этой прямой ссылке. Скачивайте и пользуйтесь на здоровье. Не забудьте изменить данные на свои!

Внимание!

У кого есть проблема с кодировкой (приходят кракозябры) в KOI8-R в почтовом клиенте Outlook, смотрите новую версию формы отправки писем на почту с решенной проблемой с кодировкой! Ну и вообще, новая версия более улучшенная!

Всем удачи и добра!

Макс Пуля

Макс Пуля

Приветствую! Присоединяйтесь к сообществу Epic Blog и выражайте свои мысли.

20 комментарии

  • Макс Пуля написал Макс Пуля

    Если каракули во входящем письме, посмотрите настройки почтового клиента (программы), попробуйте другую программу.
    Каракуль на странице "Сообщение отправлено. Спасибо...." быть не должно. Но на всякий случай, проверьте кодировку файла send.php, она должна быть в utf-8

  • Юрий написал Юрий

    Почему после отправки когда высвечивается текст перекидывания обратно на страницу.. там каракули вместо текста?

  • Алах написал Алах

    как поменять кодировку? Вместо букв каракули в письме.

  • Макс Пуля написал Макс Пуля

    Код для ознакомления, его не нужно копировать. В конце публикации есть прямая ссылка для скачивания всех исходников. Скачивайте и пользуйтесь https://epicblog.net/download/form.zip

  • Артемий написал Артемий

    Зачем установили защиту от копирования. Не получается скопировать ваш код.

  • Макс Пуля написал Макс Пуля

    С mail.ru формы обратной связи не всегда корректно работают, я заметил. Попробуйте другую почту!)

  • Сергей написал Сергей

    я его уже на хостинг поставил

  • Сергей написал Сергей

    почему сообщение не приходит на е-маил?

  • Макс Пуля написал Макс Пуля

    Приветствую!
    Чтобы изменить размеры полей используйте параметр size="число" или стили css. Для изменения цвета надписей лучше всего использовать стили css и подключить их с помощью div class="name". Таким образом, форму можно подогнать под любой дизайн сайта.

  • Владимир написал Владимир

    Хорошая рабочая форма. А как можно изменить размеры полей в форме и цвет надписей ?
    Заранее вм благодарен )