Перейти к содержимому


Пользователь месяца
BLIK BLIK 1-й за Февраль
Очков активности: 1228 0 тем, 63 сообщения, 13 баллов репутации
ТОП самых активных за этот месяц
  • Фотография Андрей WPMasterKZ
    #1

    Андрей WPMasterKZ (wpmaster.kz)
    Очков активности: 1548 Вне конкурса за определение пользователя месяца

  • Фотография ShowPrint
    #2

    ShowPrint (ShowPrint.ru)
    Очков активности: 874.5 1 тема, 50 сообщений, 11 баллов репутации

  • Фотография magnet
    #3

    magnet (rbfxdirect.com)
    Очков активности: 451.5 Вне конкурса за определение пользователя месяца

  • Фотография Megoydagi
    #4

    Megoydagi
    Очков активности: 333 8 тем, 50 сообщений, 3 балла репутации

  • Фотография pozitron123
    #5

    pozitron123
    Очков активности: 202.5 5 тем, 30 сообщений, 3 балла репутации

  • Фотография maxnik
    #6

    maxnik (konovalovpavel.ru)
    Очков активности: 177 2 темы, 53 сообщения, 2 балла репутации

  • Фотография BLIK
    #7

    BLIK
    Очков активности: 142.5 Вне конкурса за определение пользователя месяца

  • Фотография OlgaGetman
    #8

    OlgaGetman
    Очков активности: 117 Вне конкурса за определение пользователя месяца

  • Фотография WGN
    #9

    WGN (worldgamenews.com)
    Очков активности: 108 0 тем, 36 сообщений, 2 балла репутации

  • Фотография ediksing
    #10

    ediksing (online-zarabotai.ru)
    Очков активности: 57 2 темы, 32 сообщения, 1 балл репутации

  • Показать весь ТОП 10

Новый Teasernet

Поддержите форум! =)
Апдейты
  • Яндекс ИКС: 26.02.2019
  • Яндекс выдача: 21.03.2019
Топ 5 участников по репутации


Проблема с JSON

#1 ShowPrint

ShowPrint
  • Пользователь PRO
  • 3272 сообщений
  • Репутация: 907
0

Отправлено 09 November 2017 - 20:55

Всем привет.

Пытаюсь освоить ajax-загрузку файлов. Саму загрузку вроде одолел с трудом - всё грузится. Застопорился на этапе обработки результатов загрузки (success) .

 

Функция загрузки:

Спойлер

 

Обработчик "тестовый":

Спойлер

 

Консоль выдаёт ошибку JSON.parse():

Untitled-1.png

 

При том, что сама-же консоль в ответе определяет тип данных именно как json:

Untitled-2.png

 

@yury@Ixman, @miketomlin@fedornabilkin, и другие ГУРУ - подкиньте, идею в чём может быть проблема, плиииззз...

 

Заранее признателен.


 

Проблема решена.

 

Сообщение отредактировал ShowPrint: 09 November 2017 - 20:56

  • 1
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#2 Ixman

Ixman
  • Пользователь PRO
  • 3139 сообщений
  • Репутация: 821

Отправлено 09 November 2017 - 21:57

Михаил, я в своё время пытался изобрести такой же велосипед, но где-то тоже наступил на грабли и решил использовать стороннее решение. Это конечно плохо, но зато я сэкономил время.


  • 0


#3 ShowPrint

ShowPrint
    Topic Starter
  • Пользователь PRO
  • 3272 сообщений
  • Репутация: 907

Отправлено 09 November 2017 - 23:59

@Ixman, Иван, жалко бросать велосипед когда он на ходу, но небольшая восьмерка на колесе. Попробую ещё выровнять восьмёрку "натяжкой спиц".

Нагуглил что чаще всего такие ошибки появляются когда в json попадают не символьные переменные. Попробую ещё поэкспериментировать с обработчиком.

Спасибо за участие
  • 1
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#4 Ixman

Ixman
  • Пользователь PRO
  • 3139 сообщений
  • Репутация: 821

Отправлено 10 November 2017 - 09:56

@ShowPrint, если что-то получиться, то я буду рад узнать что и как.


  • 1


#5 ShowPrint

ShowPrint
    Topic Starter
  • Пользователь PRO
  • 3272 сообщений
  • Репутация: 907

Отправлено 10 November 2017 - 11:00

если что-то получиться, то я буду рад узнать что и как
Иван, ну тебе-то известно, что "восьмерка" на колесе исправляется элементарно, это современная молодежь в таких случаях тащит велик в ремонт или выбрасывает и покупает новый.  :)

 

Ночером пришла в голову мысля что, как и в какой последовательности проверить надо, тем более что у меня есть пара-тройка функций которые работают с json (написанные после твоей подсказки - эзотерического "пинка")  :)

 

Собственно по шагам:

1. Воткнул в обработчик возврат "тестового" json, не связанного с вытаскиваемыми данными:

$_Result=array("Name"=>"FileName.jpg","Size"=>"123456789");
echo json_encode($_Result);

Результат: ошибка сохранилась (в других функциях всё в норме).

Вывод: что-то не так в JS-функции.

 

2. Посмотрел по справочнику параметры функции $.ajax и сравнил с другими своими рабочими вариантами.

Ошибка сразу нашлась.  :) Как говорится

 

 

Дело было не в бобине, дело было не в реле - раздолбай сидел в кабине и мчудила на крыле

 

Вариантов решения оказалось два, поправить надо JS-функцию, оба варианта они вытекают из:

 

 

Вызов JSON.parse(str) превратит строку с данными в формате JSON в JavaScript-объект/массив/значение.

 

Вариант 1. Убрать строку

dataType: 'json',

В этом случае результат получается как строка, которую можно распарсить в json

 

Вариант 2. Убрать строку

var jsonData=JSON.parse(jsonResult);

В этом случае просто продолжать работу с jsonResult  как с json

 

Ошибка кода в стартпосте заключалась в том, что возвращаемый php-обработчиком результат уже был объявлен как json, а я его пытался распарсивать как строку, как результат - получал то, что получал в консоли  :)

 

Оффтопик
 


  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/




Похожие темы

  Название темы Автор Статистика Последнее сообщение

Оформление форума – IPBSkins.ru