#php #javascript #jquery
Итак. Есть некий скрипт, часть из которого приведена ниже, который отправляет HTML код из поля
Ответы
Ответ 1
Что-то мне подсказывает, что данный вопрос необходимо решить все же во время отправки данных. Из вашего сообщения следует, что данные отправляются, а затем возвращаются с обратным слешем. Скорее всего ваш сервер раздает _GET и _POST массивам эти самые слэши возле кавычек. Если вы знаете, что такое экранирование, следовательно уже изучали возможности отключения. Если так, то я все же повторюсь, при отсутствии возможности редактирования .htacces или php.ini, вы можете выполнить отключение этих волшебных кавычек прямо в скрипте. Вот первый попавшийся пример из сети: Однако, далеко не всегда это может помочь. В этом случае, можно перейти к плану "Б". Использовать костыль. Воткну его в ваш пример, а вы уж потестируйте и сообщите, помогло ли это решению вашей задачи. Весь участок копировать не буду, думаю, знаете где он находится: $o_field_value = $_POST['o_field_value']; меняем на $o_field_value = html_entity_decode(stripslashes($_POST['o_field_value']),ENT_QUOTES,'UTF-8'); Не забывайте, что отключение экранирования может негативно сказаться на безопасности и работоспособности сайта.Ответ 2
Вообще то я не могу понять чем они вам мешают. Это делается автоматическим образом для того что бы избежать SQL инъекций. А если у вас в фронте строка экранированная то если его сунуть куда то в код HTML все ровно экранирование убирается браузером. А вот и пример, если я что то не так понял то скажите? Это моя строка который я добавляю в textarea: let str = '\"My name is Vsya\", My name is Petya\",....'; $(document).ready(function(){ let str = '\"My name is Vsya\", My name is Petya\",....'; $('#mytextarea').text(str); }); А вот второй вариант который вы сказали, принудительно убрать экранирование прежде чем вывести контент на страницу. Для этого воспользуемся методом replase: Вот второй пример кода: $(document).ready(function(){ let str_spec = '
- $$<\/dt>
- \"Вставляет \"$\"
- $&<\/dt>
- Вставляет \"совпавшую подстроку<\/dd>
- $\`<\/dt>
- Вставляет часть строки, которая предшествует совпавшей подстроке
- $\'<\/dt>
- Вставляет \"часть строки, которая следует за совпавшей подстрокой<\/dd>
- $n или $nn, где
n/nn<\/code> - десятичные цифры<\/dt>
- Вставляет n-ю скобку в совпадении, если первый аргумент - объект
RegExp<\/code><\/dd><\/dl>'; str_spec = str_spec.replace(/\\/g,"") $('.no_spec').val(str_spec); }); Просто с помощью регулярки удалили обратный слеш.
- Вставляет n-ю скобку в совпадении, если первый аргумент - объект
Комментариев нет:
Отправить комментарий