![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 21.01.2013 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Ostatnio natrafiłem na dosyć nietypowy problem. Podczas przesyłania danych w formacie JSON z formularza do PHP, przed jakąkolwiek operacją na tych danych zawsze instynktownie używam htmlspecialchars() oraz mysql_real_escape_string(). Sęk w tym, że tak "zabezpieczone dane" z początkowej postaci: Kod [{"id":1600},{"id":857},{"id":376},{"id":1410},{"id":1434}] na Kod [{"id":1600},{"id":857},{"id":376},{"id":1410},{"id":1434}] nie są prawidłowym formatem JSON i nie można ich użyć w funkcji json_decode(). Co powinienem zrobić? Zamienić " z powrotem na cudzysłowia, czy może zmienić sposób filtrowania tych danych? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cytat [...] przed jakąkolwiek operacją na tych danych zawsze instynktownie używam htmlspecialchars() oraz mysql_real_escape_string() Funkcji filtrujących nie używa się "instynktownie", a jedynie w tych miejscach w których są one niezbędne do prawidłowego/bezpiecznego działania programu. Ty w tej chwili nie zabezpieczasz niczego, a jedynie zaśmiecasz dane. Jeżeli nie rozumiesz w jakim celu stosuje się daną funkcję, zapytaj - na pewno ktoś poza odesłaniem do dokumentacji wyjaśni Ci "ogólny powód".
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 20:30 |