PHP / MYSQL замените на новую строку

У меня есть проблема: поэтому у меня есть данные, которые выходят из базы данных и хранятся в текстовой области. Когда пользователь изменяет данные в текстовой области, содержимое отправляется в javascript и через AJAX (POST для PHP-скрипта) база данных обновляется. Это работает нормально, пока пользователь не начнет добавлять новые строки. Затем javascript преобразует это в \ n-символ и таким образом он сохраняется в базе данных как \ n.

Я хочу, чтобы в моей базе данных были настоящие символы новой строки, а не символы \ n новой строки. Есть ли способ, которым я могу использовать php, чтобы заменить \ n фактической новой строкой (НЕ br)? Я попытался изменить поле базы данных после редактирования с помощью char (10), но по какой-то причине это не работает в скрипте, кроме случаев, когда я делаю это вручную в phpmyadmin?

При редактировании с полным запросом php, новая строка в текстовой области правильно сохраняется как char (10) в mysql, а не как \ n.

Кто-нибудь понял?

0

Решение

Храните его как есть, но сначала спасайтесь real_escape_string

real_escape_string преобразует символ новой строки в 4-символьную строку ‘\ n \ r’

$text = $mysqli->real_escape_string($text);
0

Другие решения

использование [nl2br][1] функция для замены /n с новой строкой

Вставьте разрывы строк, где в строке встречаются символы новой строки (\ n):

<?php
echo nl2br("One line.\nAnother line.");
?>

Браузер выводит код выше:

One line.
Another line.
-1

По вопросам рекламы [email protected]