Отправка данных формы на Email

08.04.19

Напишем простую форму отправки данных на email с помощью PHP функции mail(). Наша форма также будет записывать данные в файл на сервере. Код не привязан к каким либо CMS и может использован где угодно

Код:

<?php 
if(isset($_POST['spam']) && isset($_POST['submit']) && !$_POST['spam']){
 
    //departure date
    $date = date('d-m-Y H:i');
    //the value from the name field is limited to 100 characters
    $field_name = substr(htmlspecialchars(trim($_POST['name'])), 0, 100);
    //the value of the message field is limited to 1000 characters
    $field_message = substr(htmlspecialchars(trim($_POST['message'])), 0, 1000);
 
    $to = "user\@example.com"; //to
    $subject = "Data from the feedback form";
    //text of the letter
    $msg = "Name: $field_name
    \nMessage: $field_message";
 
    $headers = 'From: webmaster\@example.com'; // from
 
    mail($to, $subject, $msg, $headers);//send the letter
 
    //create a string to write to the file on the server
    $file_msg = "$date Name: $field_name; Message: $field_message;\n";
 
    //write data to file
    file_put_contents(__DIR__ . '/mail.txt', $file_msg, FILE_APPEND); 
 
    echo '<p>Thank you for your message</p>';
}
 
?>
<form method="post" action="">
    <input type="text" name="name" placeholder="Name*" required>
    <textarea name="message" placeholder="Message*" required></textarea>
    <input type="hidden" name="spam" value="">
    <input type="submit" value="Send" name="submit">
</form>

Отправляем письмо на Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.. Отправитель Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.. Значение "from" желательно указывать почтовый ящик с текущего домена. Данные записываем в файл mail.txt. Поля в форме сделали обязательными с помощью атрибута required. Поле spam обеспечит защиту от спам-ботов. Обработчик формы по текущему адресу. После успешной отправки выводим сообщение благодарности.

blog comments powered by Disqus