Что такое почта PHP?
Почта PHP - это встроенная функция PHP, которая используется для отправки электронных писем из сценариев PHP.
Функция mail принимает следующие параметры;
- Адрес электронной почты
- Предмет
- Сообщение
- Адреса электронной почты CC или BC
- Это экономичный способ оповещения пользователей о важных событиях.
- Позвольте пользователям связываться с вами по электронной почте, предоставив форму связи на веб-сайте, на котором рассылается предоставленный контент.
- Разработчики могут использовать его для получения системных ошибок по электронной почте.
- Вы можете использовать его для отправки подписчикам на рассылку новостей по электронной почте.
- Вы можете использовать его для отправки ссылок для сброса пароля пользователям, которые забыли свои пароли.
- Вы можете использовать его для отправки по электронной почте ссылок активации / подтверждения. Это полезно при регистрации пользователей и проверке их адресов электронной почты.
В этом руководстве вы узнаете:
- Зачем / когда использовать почту PHP
- Простой протокол передачи почты
- Очистка входных данных пользователей электронной почты
- Безопасная почта
Зачем / когда использовать почту PHP
Отправка почты с помощью PHP
Функция почты PHP имеет следующий базовый синтаксис
ЗДЕСЬ,
- «$ To_email_address» - адрес электронной почты получателя почты.
- «$ Subject» - это тема электронного письма.
- «$ Message» - это сообщение, которое нужно отправить.
- «[$ Headers]» не является обязательным, его можно использовать для включения такой информации, как CC, BCC.
- CC - это аббревиатура от слова «копия». Он используется, когда вы хотите отправить копию заинтересованному лицу, например, электронное письмо с жалобой, отправленное в компанию, также может быть отправлено как CC в доску жалоб.
- BCC - это аббревиатура от слепой копии. Это похоже на CC. Адреса электронной почты, включенные в раздел BCC, не будут показаны другим получателям.
Простой протокол передачи почты (SMTP)
Почтовик PHP использует протокол SMTP для отправки почты.
На размещенном сервере настройки SMTP уже были бы установлены.
Настройки почты SMTP можно настроить из файла «php.ini» в папке установки PHP.
Настройка параметров SMTP на вашем локальном хосте Предполагая, что вы используете xampp в Windows, найдите «php.ini» в каталоге «C: \ xampp \ php».
- Откройте его с помощью блокнота или любого текстового редактора. В этом примере мы будем использовать блокнот. Щелкните меню редактирования
- Нажмите на меню "Найти…"
- Появится диалоговое меню поиска.
- Нажмите кнопку "Найти далее".
- Найдите записи
- [функция почты]
- ; XAMPP: не удаляйте полустолбец, если вы хотите работать с SMTP-сервером, таким как Mercury.
- ; SMTP = localhost
- ; smtp_port = 25
- Удалите точки с запятой перед SMTP и smtp_port и установите SMTP на ваш smtp-сервер, а порт на ваш smtp-порт. Ваши настройки должны выглядеть следующим образом
- SMTP = smtp.example.com
- smtp_port = 25
- Обратите внимание, что настройки SMTP можно получить у поставщика услуг веб-хостинга.
- Если сервер требует аутентификации, добавьте следующие строки.
- auth_username = Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра.
- auth_password = example_password
- Сохраните новые изменения.
- Перезагрузите сервер Apache.
Пример Php Mail
Давайте теперь посмотрим на пример, который отправляет простое письмо.
Выход:
Примечание: в приведенном выше примере используются только 4 обязательных параметра.
Вы должны заменить указанный выше фиктивный адрес электронной почты реальным адресом электронной почты.
Очистка входных данных пользователей электронной почты
В приведенном выше примере для простоты используются жестко закодированные значения в исходном коде для адреса электронной почты и других деталей.
Предположим, вам нужно создать форму связи с нами, чтобы пользователи заполнили данные, а затем отправили.
- Пользователи могут случайно или намеренно ввести код в заголовки, что может привести к рассылке спама.
- Чтобы защитить вашу систему от таких атак, вы можете создать настраиваемую функцию, которая очищает и проверяет значения перед отправкой почты.
Давайте создадим настраиваемую функцию, которая проверяет и очищает адрес электронной почты с помощью встроенной функции filter_var.
Функция filter_var Функция filter_var используется для очистки и проверки введенных пользователем данных.
Он имеет следующий базовый синтаксис.
ЗДЕСЬ,
- “filter_var(… )” is the validation and sanitization function
- “$field” is the value of the field to be filtered.
- “SANITIZATION TYPE” is the type of sanitization to be performed on the field such as;
- FILTER_VALIDATE_EMAIL - it returns true for valid email addresses and false for invalid email addresses.
- FILTER_SANITIZE_EMAIL - it removes illegal characters from email addresses. info\@domain.(com) returns This email address is being protected from spambots. You need JavaScript enabled to view it…
- FILTER_SANITIZE_URL - it removes illegal characters from URLs. http://[email protected]é returns>http://[email protected]
- FILTER_SANITIZE_STRING - it removes tags from string values. am bold becomes am bold.
В приведенном ниже коде используется настраиваемая функция для отправки защищенной почты.
Выход:
Безопасная почта
Электронные письма могут быть перехвачены во время передачи непредусмотренными получателями.
Это может раскрыть содержимое электронного письма непреднамеренным получателям.
Защищенная почта решает эту проблему, передавая электронные письма через защищенный протокол передачи гипертекста (HTTPS).
HTTPS шифрует сообщения перед их отправкой.
Резюме
- Встроенная функция PHP mail () используется для отправки почты из сценариев PHP.
- Проверки достоверности и дезинфекции данных необходимы для отправки защищенной почты.
- Встроенная функция PHP filter_var () обеспечивает простой и эффективный способ выполнения очистки и проверки данных.