в ajax не возвращаются данные из PHP

Статус
В этой теме нельзя размещать новые ответы.
Зачем вызов JSON.parse (data) если в ajax запросе и так указан тип:
dataType: 'json',
В таком случае преобразование будет происходит автоматически в объект js.А такой вызов, как у вас будет вызывать ошибку.Потому что-то преобразование уже произошло автоматически при приеме ответа с сервера!

В том то и дело, что если на клиенте указан тип json - то срабатывает инструкция error так как от сервера приходит mqsli object а не json.
Если тип данных не указывать - то срабатывает success, но мне нужен json, чтобы аяксом подгружать данные на страницу.

Ниже картинка - ответ сервера. Сейчас попробую распарсить как указал Sandbird - посмотрю, что получится из этого
 

Вложения

  • Снимок.JPG
    Снимок.JPG
    32,5 KB · Просмотры: 4
В том то и дело, что если на клиенте указан тип json - то срабатывает инструкция error так как от сервера приходит mqsli object а не json.
Если тип данных не указывать - то срабатывает success, но мне нужен json, чтобы аяксом подгружать данные на страницу.

Ниже картинка - ответ сервера. Сейчас попробую распарсить как указал Sandbird - посмотрю, что получится из этого
Попробуйте применить json_last_error.И напишите что возвращает
 
Последнее редактирование:
You have to parse the json first:

Код:
 "success": function (data) {
  var response = JSON.parse (data);
  if (response.code == "error") {
     window.alert ("there is an error");
  } else {
      window.alert (response.goods);
  }
}

При попытке " var response = JSON.parse (data);" - как я понимаю распасивать нечего:

так как клиент получает объект:

  • mysqli Object ( ) {"code":"success","options":{"brands":"11","category_id":0,"min_price":0,"max_price":3000,"sort_by":"price","sort_dir":"asc"},"goods":[{"products_fsk18":"0","products_shippingtime":"1","products_model":"","products_ean":"","products_name":"\u0425\u0430\u043b\u0430\u0442 \u0425-39\u0412","manufacturers_name":null,"products_quantity":"-1","products_image":"H39...

а нужно примерно так:
{code: "success", data: {,…}}
 
Или может кто подскажет как получить доступ к содержимому массива "goods"?
чтобы аяксом подменять данные на странице...

С json более ли менее понятно: goods.products_name например, но с тем что я получаю это не проходит :conf:
 
Всё ребят.
Проблема решена. Можно закрывать тему. У меня по недогляду в функцию connectDB() попал код вывода переменной клиенту. Поэтому клиенту и прилетал объект: переменная + json строка.
Проблему решил.
Всем спасибо за участие!
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху