Ошибка Call to undefined function json_decode() или json_encode()
Это значит, что у Вас не определяется функция json_decode() или json_encode(). А это может быть в случае если у вас php ниже 5.2.0.
Как это пофиксить без обновления:
Качаем либу http://mike.teczno.com/JSON.tar.gz
Вставляем где нужно:
if( !function_exists('json_encode') ) {
function json_encode($data) {
$json = new Services_JSON();
return( $json->encode($data) );
}
}
// Future-friendly json_decode
if( !function_exists('json_decode') ) {
function json_decode($data, $bool) {
if ($bool) {
$json = new Services_JSON(SERVICES_JSON_LOOSE_TYPE);
} else {
$json = new Services_JSON();
}
return( $json->decode($data) );
}
}
Подключаем либу:
include("JSON.php");
Всо -) пс, ТыЦ Дэсять -)
ZradeG
10.03.2010 at 23:58phpinfo показывается, что у хостера PHP Version 5.2.10, но сабжевая ошибка тем не менее появляется
какие могут быть варианты?
utz0r2
11.03.2010 at 00:11ZradeG, хмхм в версии выше старше 5.2.0 поддержка JSON встроена в ядро. как вариант все таки их подключить вручную как написано в посте…
ZradeG
11.03.2010 at 09:31igor_veselov, а можно ли как-то осуществить это подключение, не обладая правами доступа куда-либо кроме домашней директории?
дело-то у хостера на сервере происходит
utz0r2
11.03.2010 at 19:46ZradeG, можно
Семен
15.02.2011 at 12:38igor_veselov,
А не подскажешь как?
Пишу маленький плагин, который будет работать и на PHP низших версий
Заранее благодарен
utz0r2
16.02.2011 at 10:09об этом и пост. подключить класс и юзать как буд-то поддержка есть -)
Helen
24.02.2011 at 17:30Ошибка JSON DATA ERROR: Fatl error: Call to undefined function: json_decode() in
plugins\\editors\\jce\\libraries\\classes\\plugin.php on line 860
В текстовом редакторе JCE, когда открываю библиотеку, чтобы вставить изображение в текст. Подойдет ли описанный вами способ?
Если да, подскажите, пожалуйста, где нужно вставлять код? И где подключать либу, а главное как? Заранее спасибо за ликбез)))
Советчикус
24.02.2011 at 19:47Скиньте файлик JSON.php в plugins\\editors\\jce\\libraries\\classes\\
и в plugins\\editors\\jce\\libraries\\classes\\plugin.php в самом верху после <?php вставте код: include("JSON.php");
polkan
28.03.2011 at 01:17Советчикус, Здравствуйте . Сделал как Вы написали, – ПРОБЛЕМА осталась
Ошибка JSON DATA ERROR: Fatl error: Call to undefined function: json_decode() in
plugins\\editors\\jce\\libraries\\classes\\plugin.php on line 860
utz0r2
28.03.2011 at 12:11polkan,
Из поста
этот код тоже надо вставить после include("JSON.php");
polkan
28.03.2011 at 16:14Вот незадача, а я так обрадовался что заработает, вставил код и в результате
JSON DATA ERROR : <br />
<b>Warning</b>: Missing argument 2 for json_decode(), called in /var/www/vhosts/life-miracle.ru/httpdocs/plugins/editors/jce/libraries/classes/plugin.php on line 879 and defined in <b>/var/www/vhosts/site.ru/httpdocs/plugins/editors/jce/libraries/classes/plugin.php</b> on line <b>12</b><br />
<br />
<b>Notice</b>: Undefined variable: bool in <b>/var/www/vhosts/site.ru/httpdocs/plugins/editors/jce/libraries/classes/plugin.php</b> on line <b>13</b><br />
{"result":[{"folders":[{"id":"index.php?option=com_content&view=section&id=1","url":"&q
uot;,"name":"\\u041c\\u0415\\u041d\\u042e","class":"folder content"},{"id":"index.php?option=com_content&view=section&id=2","url":"","name":"
\\u041d\\u041e\\u0412\\u041e\\u0421\\u0422\\u0418","class":"folder content"},{"id":"option=com_content&view=uncategorized","url":"","name":"Uncategor
ized","class":"folder content nolink"}]}]}
скажу честно, мне это ничего не говорит , надеюсь на Вашу помощь. СПАСИБО !
utz0r2
28.03.2011 at 21:36Странно потому что если мне не изменяет память то в JCE есть этот класс JSON который и предусмотрен на случай когда пхп не поддерживает его, посему Вам этот хак не нужен.
1) Очистите кэш, не помогло? тогда п.2
2) Обновить JCE http://www.joomlacontenteditor.net/downloads/editor/joomla15x
polkan
29.03.2011 at 00:29igor_veselov,
Не помогло….
а может данная ошибка возникать если у хостера
Версия PHP: 5.1.6 я нашёл материал , что она должна быть >= 5.2 Так ?
utz0r2
29.03.2011 at 10:36Нет, там в http://www.joomlacontenteditor.net/requirements что нужно PHP5 и класс JSON вложен в плагин. У Вас проблема в чем-то другом
polkan
31.03.2011 at 00:54Решение проблемы найдено !!! Удалил старую версию 1577 и установил 15710 , с одним НО, файлы удалял вручную через FileZilla , т.к. заметил что после стандартной процедуры удаления (Расширения – Установить – Удалить – Компоненты
там выделить JCE и нажать Удалить) удаляются не все файлы, вернее файлы все а вот коренные папки остаются такие как,
administrator/components/com_jce
components/com_jce
plugins/editors/jce
И вот только после ручного удаления этих папок
ВСЁ ВСТАЛО И ЗАРАБОТАЛО !!!
Ева
09.07.2011 at 18:46Большое спасибо за совет! Версия PHP Version 5.2.10, но пришлось JSON подключить на хостинге, всё заработало.