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

Я создаю простую контактную форму с текстовой областью в качестве сообщения:

<textarea name="message"></textarea>

Но когда я создаю пример:

test1
test2
'test'

с вводом каждого слова, и оно становится test1test2'test' Я думаю, что какая-то ошибка, когда пользователь нажимает ввод, и электронное письмо, которое я получаю без «ввода»,

Я использую php FILTER_SANITIZE_STRING в своем текстовом сообщении.

$message = filter_var($_POST['message'], FILTER_SANITIZE_STRING);

И последний код выполнения на мою электронную почту:

function email($to, $email, $name, $subject, $body){
    $header = array();
    $header[] = "MIME-Version: 1.0";
    $header[] = "From: $email";
    $header[] = "Content-Type: text/html; charset=ISO-8859-1";
    $header[] = "Content-Transfer-Encoding: 7bit";
    if( mail($to, $subject, $body, implode("\r\n", $header)) ) return true; 
}

person lui    schedule 03.02.2014    source источник


Ответы (2)


вы можете использовать функцию nl2br....

 $message = nl2br(filter_var($_POST['message'], FILTER_SANITIZE_STRING));
person user1844933    schedule 03.02.2014

Используйте nl2br для преобразования новых строк в <br />

$message = nl2br($_POST['message']);
person Mario Radomanana    schedule 03.02.2014