2016-06-20 2 views
-1

У меня есть данные о продуктах с информацией о продукции. Это фактически в форме массива, но я попытался использовать функцию json_encode, чтобы преобразовать ее в ответ JSON.Как JSON кодирует данные с HTML-тегами?

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

Ссылка: http://superwholesalebazaar.xyz/wocom.php

Почему он показывает линии? Разве это не ответ JSON?

Спасибо!

+0

браузер ожидать HTML так что его делает его лучше всего интерпретировать, вы хотите просмотреть источник –

+0

У вас есть ' \ u20b9', и у него есть какой-то« забавный тег », поэтому вы видите забастовку по тексту , Вам нужно использовать функцию 'strip_tags' в php, чтобы избавиться от всех тэгов html. Обязательно избавитесь от других персонажей для дезинфекции данных; в результате вы получите чистые данные json. – unixmiah

+0

Просто нужно добавить заголовок ('Content-Type: application/json'); Ну, спасибо вам, ребята, за ваше время :) –

ответ

0

Его показаны линии, потому что в HTML-части данных у вас есть элементы, которые, естественно, имеют связанный с ним стиль strikethrough линии, такой как элемент <del>.

Но поскольку его ответ json и вы отправляете его как текст/html-тип, браузер отображает все как HTML, и поскольку json encode избегает некоторых символов в HTML, он выглядит немного странным, например, некоторые элементы не закрыты должным образом.

Я думаю, что вы хотите сделать, это отправить этот ответ с типом содержимого, установленным в «JSON»

Вот как вы можете сделать это в PHP:

header('Content-Type: application/json'); 
// echo your json content here 
+0

это отличная идея. – unixmiah

+0

Чем вы очень. Извините, но я не могу выдвинуть или выбрать ваш ответ. :( –

+0

@MariaKari thats ok, вы можете выбрать его, хотя, похоже, вы это поняли;) – JoeMoe1984

Смежные вопросы