Как дезинфицировать электронную почту перед отправкой с помощью php

У меня есть форма на веб-сайте, где пользователь вводит имя в поле input и сообщение в поле textarea. Это сообщение будет отправлено на серверную часть и через php mail() отправлено по почте определенному получателю из моей базы данных. Теперь я не уверен, какую дезинфекцию мне следует выполнить перед отправкой сообщения. Как лучше всего использовать простой PHP или что-то вроде PHPPurifier?

Я гуглил и гуглил, но все, что я получил, это как дезинфицировать адреса электронной почты, ничего о содержании сообщения и нужно ли это вообще.

РЕДАКТИРОВАТЬ: я не знаю, какой ущерб может быть нанесен каким-либо вредоносным телом электронной почты. Удаление всего HTML кажется наиболее очевидным, но что еще? Мне просто действительно нужны разрывы строк, в основном я думаю. Какая здесь обычная практика?

Я не буду очищать сам адрес электронной почты, это будет происходить из базы данных.


person spirytus    schedule 22.11.2013    source источник
comment
Трудно сказать, какая дезинфекция вам может понадобиться, если вы не уточните тип содержимого почтовых сообщений.   -  person mario    schedule 22.11.2013
comment
Это может быть вам полезно: вставка электронной почты. Техника filter_var() хороша для адреса электронной почты, но вы захотите настроить часть сообщения так, чтобы из нее нельзя было добавлять новые заголовки почты.   -  person Volomike    schedule 08.09.2016


Ответы (1)


if(filter_var($email, FILTER_VALIDATE_EMAIL)){ 
//all good
}

ref: Проверить фильтры

это не защита от дурака, но, вероятно, достаточно хорошо для большинства

person Community    schedule 22.11.2013
comment
"<script>alert(1)</script>"@example.com является действительным адресом. - person Gumbo; 04.12.2013
comment
Это для подтверждения адреса электронной почты. Он хочет очистить текстовое поле, содержащее сообщение электронной почты. - person Leandri; 01.09.2014