Фильтр

1. NVKZMATRIXALEX (22.01.2015 / 14:24)
Код функций фильра
function filter($t)
{
$t = mysql_real_escape_string(nl2br(htmlspecialchars(trim($t))));
$t = str_replace("\'", "'", $t);
$t = str_replace('\\', "\", $t);
$t = str_replace("|", "I", $t);
$t = str_replace("||", "I", $t);
$t = str_replace("/\\\$/", "$", $t);
return $t;
}
Проблема заключается в том что когда с помощью SHIFT+ENTER переводим строку, сохраняем текст, смотрим в итоге получается вот так
1 строка
\r\n2 строка
\r\n3 строка
и.т.д.
Что в фильтре делает это ?

2. SeReGa1993 (22.01.2015 / 14:32)
nl2br(htmlspecialchars в этом косяк

3. NVKZMATRIXALEX (22.01.2015 / 14:46)
SeReGa1993 (22 Января 2015 / 14:32)
nl2br(htmlspecialchars в этом косяк
действительно, убрал nl2rb теперь строку не переносит но все также ставит \n\r Щас дальше попробую покопатся

4. NVKZMATRIXALEX (22.01.2015 / 15:11)
За 35р может кто решить проблему ? больше на вебмани нет smile
У меня уже сил нет, весь подавлен.

5. SeReGa1993 (22.01.2015 / 15:22)
При записи используй trim + mysql_real_escape_string, при выводе htmspecialchars.

6. Санёк (22.01.2015 / 18:49)
<?php
$t = preg_replace('~'.PHP_EOL.'~','<br />',$t); //если новая строка.
?>
Попробуй так.

7. NVKZMATRIXALEX (22.01.2015 / 20:51)
Tez (22 Января 2015 / 18:49)
<?php
$t = preg_replace('~'.PHP_EOL.'~','<br />',$t); //если новая строка.
?>
Попробуй так.
Всеравно выводит /n/r

Добавлено через 01:32 сек.
исправил просто убрав это
$t = str_replace("\'", "'", $t);
$t = str_replace('\\', "\", $t);
$t = str_replace("|", "I", $t);
$t = str_replace("||", "I", $t);
$t = str_replace("/\\\$/", "$", $t);
что эти строки вообще делают ?

URL: https://visavi.net/topics/41897