ВАРИАНТ 4-Й, очевидный
1 - пишу абзац текста с переносами в textarea
2 - Отправляю в SQL-базу
ничего не меняя.
3 - Оригинальные системные переносы сохраняются в SQL - базе,
как и должны, поскольку любые заморочки с яваскриптами к
базе данных не имеют вообще никакого, ни малейшего отношения
4 - Читаю из SQL базы
5 - Вывожу в обратно в texarea
6 - В texarea
ВСЁ РАБОТАЕТ! A magic! При том что мы вообще нигде ничего ни на что не меняли
6a - По поводу HTML сущностей. Хотя в приведённом примере нет ни одного символа, который бы требовал перекодирования в HTML-сущности, тем не менее, при выводе любого текста в HTML, эти сущности действительно должны быть перекодированы в обязательном порядке, всегда, в 100% случаев. Причем с помощью не какой-то левой addslashes, а функции, которая действительно это делает, htmlspecialchars($var_zametka)
7 - Собираюсь с мыслями, и напряжённо думаю - в каком месте у меня текст взаимодействует с
яваскриптом? Который к выводу текста в текстарию не имеет ни малейшего отношения?
8 - думаю...
9 - думаю...
10 - наконец-то нахожу.
11 - перед тем, как отправлять текст в яваскрипт, кодируем его тем методом,
который специально предназначен для отправки данных в яваскрипт, а не какими-то шаманскими заклинаниями и плясками с бубном.
echo json_encode($var_zametka)
12 - ВСЁ РАБОТАЕТ! Просто потому, что получилось расхлебать кашу в голове, в которой SQL путается с РНР, HTML c яваскриптом, а экранирование спецсимволов почему-то называется заменой на HTML-сущности. Хотя если открыть документацию на
абсолютно бесполезную функцию addslashes, то там ни одного разочка слово HTML не встретится.