Задать вопрос
Aidosss
@Aidosss
Programmer

Как вы экрануете спец символы json в php?

Система такая: js с сервера загружает Json строку коментариев и парсит. Потом отображает комменты. Но что если пользователь добавляет комментарий содержащий json строку. Тогда при парсинге парсится и тот json код которого добавил пользователь! Вот так система нарушается. По этому ищу способ как в php экранировать спец символы json. Давайте привожу пример где все норм: ["comment text"] теперь посмотрим что будет если пользователь добавляет комментарий содержащий json строку: ["{"bla":"4"}"]
  • Вопрос задан
  • 973 просмотра
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
Если вы нормально сохраните ничего не будет. Почему оно при первом json encode должно вдруг внутри оставить рабочий json?
Если вы напрямую в базу куда-нибудь пишете и вообще ничего не делаете, то json это не самая большая проблема.
Ответ написан
sergiks
@sergiks Куратор тега PHP
♬♬
Нет никаких проблем в экранировании спецсимволов при обёртке JSON-строки в JSON. Один и более раз:
var s = {comment:"test"};

var s1 = JSON.stringify(s);  // {"comment":"test"}
var s2 = JSON.stringify(s1); // "{\"comment\":\"test\"}"
var s3 = JSON.stringify(s2); // "\"{\\\"comment\\\":\\\"test\\\"}\""
var s4 = JSON.stringify(s3); // "\"\\\"{\\\\\\\"comment\\\\\\\":\\\\\\\"test\\\\\\\"}\\\"\""
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 дек. 2024, в 14:07
15000 руб./за проект
22 дек. 2024, в 13:01
50000 руб./за проект
22 дек. 2024, в 10:44
15000 руб./за проект