CKEditor удаляет часть символов

Здраствуйте, я пишу довольно не сложное приложение, и возникла трудность с CKEditor. Я использую CKEditor, чтобы добавлять и редактировать статьи на сайте. (Движка на сайте как такого нет, я пишу так-же и php скрипты).

Когда я добавляю в CKEditor статью с JS кодом, который представлен ниже

 Программы на JavaScript могут быть вставлены в любое место HTML-документа с помощью тега <script>. Для примера:
<!DOCTYPE HTML>
<html>

<body>

  <p>Перед скриптом...</p>

  <script>
    alert( 'Привет, мир!' );
  </script>

  <p>...После скрипта.</p>

</body>

</html>

Тег <script> содержит JavaScript-код, который автоматически выполнится, когда браузер его обработает.
Внешние скрипты
Файл скрипта можно подключить к HTML с помощью атрибута src:
<script src="/path/to/script.js"></script>

Здесь /path/to/script.js – это абсолютный путь до скрипта от корня сайта. Также можно указать относительный путь от текущей страницы. Например, src="script.js" будет означать, что файл "script.js" находится в текущей папке.
Можно указать и полный URL-адрес. Например:
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/3.2.0/lodash.js"></script>

Для подключения нескольких скриптов используется несколько тегов:
<script src="/js/script1.js"></script>
<script src="/js/script2.js"></script>
…

Это пример статьи для сайта, как видно здесь есть и html, js и обычный текст. Если открыть режим "Источник", то видно, что код модифицируется:

<p>Программы на JavaScript могут быть вставлены в любое место HTML-документа с помощью тега &lt;script&gt;.</p>

<p>Для примера:</p>

<p>&lt;!DOCTYPE HTML&gt;</p>

<p>&lt;html&gt;</p>

<p>&nbsp;</p>

<p>&lt;body&gt;</p>

<p>&nbsp;</p>

<p>&nbsp; &lt;p&gt;Перед скриптом...&lt;/p&gt;</p>

<p>&nbsp;</p>

<p>&nbsp; &lt;script&gt;</p>

<p>&nbsp;&nbsp;&nbsp; alert( &#39;Привет, мир!&#39; );</p>

<p>&nbsp; &lt;/script&gt;</p>

<p>&nbsp;</p>

<p>&nbsp; &lt;p&gt;...После скрипта.&lt;/p&gt;</p>

<p>&nbsp;</p>

<p>&lt;/body&gt;</p>

<p>&nbsp;</p>

<p>&lt;/html&gt;</p>

<p>&nbsp;</p>

<p>Тег &lt;script&gt; содержит JavaScript-код, который автоматически выполнится, когда браузер его обработает.</p>

<h2>Внешние скрипты</h2>

<p>Файл скрипта можно подключить к HTML с помощью атрибута&nbsp;<code>src</code>:</p>

<p>&lt;script src=&quot;/path/to/script.js&quot;&gt;&lt;/script&gt;</p>

<p>&nbsp;</p>

<p>Здесь /path/to/script.js &ndash; это абсолютный путь до скрипта от корня сайта. Также можно указать относительный путь от текущей страницы. Например, src=&quot;script.js&quot; будет означать, что файл &quot;script.js&quot; находится в текущей папке.</p>

<p>Можно указать и полный URL-адрес. Например:</p>

<p>&lt;script src=&quot;https://cdnjs.cloudflare.com/ajax/libs/lodash.js/3.2.0/lodash.js&quot;&gt;&lt;/script&gt;</p>

<p>&nbsp;</p>

<p>Для подключения нескольких скриптов используется несколько тегов:</p>

<p>&lt;script src=&quot;/js/script1.js&quot;&gt;&lt;/script&gt;</p>

<p>&lt;script src=&quot;/js/script2.js&quot;&gt;&lt;/script&gt;</p>

<p>&hellip;</p>

При этом все отображается нормально. После загрузки в базу данных и просмотр статьи, которая уже извлекается из базы данных, тоже все нормально.

Проблемы возникают когда этот же текст загружается между тегами <textarea>. Часть символов при этом пропадает. Снизу код в режиме "Источник", который выдает CKEditor:

<p>Программы на JavaScript могут быть вставлены в любое место HTML-документа с помощью тега</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>...После скрипта.</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>Тег</p>

<p>&nbsp;</p>

<p>Здесь /path/to/script.js &ndash; это абсолютный путь до скрипта от корня сайта. Также можно указать относительный путь от текущей страницы. Например, src=&quot;script.js&quot; будет означать, что файл &quot;script.js&quot; находится в текущей папке.</p>

<p>Можно указать и полный URL-адрес. Например:</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>Для подключения нескольких скриптов используется несколько тегов:</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>&hellip;</p>

Вроде бы даже прослеживается какая-то закономерность, но не могу понять как настроить, чтобы исходный текст не редактировался CKEditor.

То есть если кратко: я ввожу текст в CKEditor он его как-то изменяет, видимо в более удобную форму. Если этот текст в более удобной форме внести снова в CKEditor, то некоторые символы из него убираются. Причем в базе данных и другими скриптами, текст ни как не модифицируется.


Ответы (0 шт):