Over 10 years we helping companies reach their financial and branding goals. Onum is a values-driven SEO agency dedicated.

CONTACTS
Обзор

Формы обратной связи для сайта на HTML и PHP

Формы обратной связи для сайта на HTML и PHP

Создание формы обратной связи на HTML и PHP — это распространённая задача. Давайте разобьем ее на несколько этапов.

Этап 1: HTML форма

Сначала создадим форму на HTML. Вот простой пример формы обратной связи:

HTML
<!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Форма обратной связи</title>
</head>
<body>
    <h2>Обратная связь</h2>
    <form action="process.php" method="POST">
        <label for="name">Имя:</label>
        <input type="text" id="name" name="name" required><br><br>
        
        <label for="email">Email:</label>
        <input type="email" id="email" name="email" required><br><br>
        
        <label for="message">Сообщение:</label><br>
        <textarea id="message" name="message" rows="4" required></textarea><br><br>
        
        <input type="submit" value="Отправить">
    </form>
</body>
</html>

Этап 2: Обработка данных на стороне сервера (PHP)

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

php
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // Получаем данные из формы
    $name = htmlspecialchars(strip_tags(trim($_POST['name'])));
    $email = htmlspecialchars(strip_tags(trim($_POST['email'])));
    $message = htmlspecialchars(strip_tags(trim($_POST['message'])));
    
    // Проверка на корректность email
    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
        die("Некорректный email.");
    }

    // Здесь можно добавить код для отправки сообщения на email, например:
    $to = "your-email@example.com";
    $subject = "Новое сообщение от $name";
    $body = "Имя: $name\nEmail: $email\nСообщение: $message";
    
    // Отправляем письмо
    if (mail($to, $subject, $body)) {
        echo "Сообщение успешно отправлено!";
    } else {
        echo "Ошибка при отправке сообщения.";
    }
} else {
    die("Недопустимый метод запроса.");
}
?>

Основные моменты:

  1. HTML форма: Форма содержит поля для имени, e-mail и сообщения, а также кнопку для отправки формы.
  2. PHP скрипт: Этот скрипт получает данные из формы, проводит валидацию (например, проверяет корректность email), а затем отправляет сообщение на указанный адрес.

Безопасность

Не забывайте, что работа с пользовательскими данными требует особого внимания с точки зрения безопасности. Рассмотрите возможности использования:

  • filter_var() для валидации данных.
  • Защиты от отправки спама (например, с помощью CAPTCHA).
  • HTTPS для шифрования данных.

Итоги

Теперь у Вас есть работающая форма обратной связи, которая отправляет данные на сервер и обрабатывает их с помощью PHP. Вы можете расширять эту функциональность в зависимости от Ваших потребностей.