wzzrd правильно. Вероятно, это должно происходить в стеке, и проблема будет в том, что возвращаемое значение из json_decode не соответствует ожидаемому.
С http://php.net/json_decode
Возвращает значение, закодированное в json в
соответствующий тип PHP. Значения верны,
false и null (без учета регистра)
возвращается как TRUE, FALSE и NULL
соответственно. NULL возвращается, если
JSON не может быть декодирован или, если
закодированные данные глубже, чем
предел рекурсии.
Вы делаете один и тот же запрос на обоих серверах (& data = xxx абсолютно одинаков)? Это было бы первым, что нужно проверить.
Если да, то похожи ли ваши php.ini?
magic_quotes_gpc=1
изменит $ _GET / $ _ POST / $ _ COOKIE и является вероятным виновником.