php.ini и ajax

beckerman

Новичок
В базе данных сохранен HTML-код вот в таком виде: <a class="internal-link">tag</a>. Я его вытаскиваю и перевожу в JSON. Скрипт хорошо работает на домашнем компютере, а на хосте получаю ошибку

illegal character
...e.jpg","description":"<a class="\" internal-link="">tag<\/a>","...


Вот Фрагмент скрипта:
PHP:
…....
$json_res // массив с данными из базы
print_r(htmlspecials($json_res)); // случай 1
$json_res = json_encode($json_res);
print_r(htmlspecials($json_res)); // случай 2
$content = '
<script type="text/javascript">
var data = '.$json_res.'; // случай 3
</script>
.......
Код:
случай 1
… [picture] => dame.jpg [description] => <a class="internal-link">tag</a> [iterator] => "0" ….

случай 2
... "picture":"dame.jpg","description":"<a class=\"internal-link\">tag<\/a> ","iterator":"\"0\""}]

случай 3
var data = [ … "picture":"dame.jpg","description":"<a class="\" internal-link="">tag<\/a>","iterator":"\"0\""}];
То есть в сгенирированном JavaScripte "<a class=\"internal-link\">tag<\/a> " преобразуется в "<a class="\" internal-link="", хотя JSON был построен правильно.

Выключил Magic Quotes - ничего не дало.. Какие ешё настройки php могут быть за это ответственны?
 

beckerman

Новичок
А дело-то все было в версии PHP.. С 5.3 стало работать. Хотя несколько странно, JSON строился-то и с PHP 5.2..
 
Сверху