Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.06.2010, 20:26
Аспирант
Отправить личное сообщение для hangover Посмотреть профиль Найти все сообщения от hangover
 
Регистрация: 08.10.2009
Сообщений: 53

jquery, ajax передача данных в формате JSON
Здрасвуйте.
$.getJSON('php/module/feedback.php', {
           'data':sData
       }, feedbackStatus);


sData - JSON объект.

в пхп файл передаеться перменная data, только ее значение [Objecy objet], вместо JSON формата.

как правильно сделать запрос, чтобы в пхп можно было использовать json_decode?



П.С.
соль еше в том что если предаю просто стринговую переменную
$.getJSON('php/module/feedback.php', {
           'data':'{"first":"one"}'
       }, feedbackStatus);

то пхп файл получает ее, но декодить json не поулчаеться.
то етсь
$t = json_decode($data)
echo $t->{'first'}; // ничего не выведет


а если же
$t = json_decode('{"first":"one"}')
echo $t->{'first'}; // все нормально





суть вопроса:
как из яваскрипта передать файлы пхп обработчку в формате JSON чтобы можешть было использовать пхп функцию json_decode?

Последний раз редактировалось hangover, 24.06.2010 в 21:08.
Ответить с цитированием
  #2 (permalink)  
Старый 25.06.2010, 01:16
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

$.getJSON('php/module/feedback.php', {
    data: {
       param: sData
    }
}, feedbackStatus);

<?php
json_decode($_REQUEST['param'])
?>
Посмотрите предварительно, валидна ли JSON-строка на сервере, а то может какие-нибудь magic quotes портят её.


А зачем на сервер в формате JSON данные передавать?
Ответить с цитированием
  #3 (permalink)  
Старый 25.06.2010, 01:20
Аспирант
Отправить личное сообщение для hangover Посмотреть профиль Найти все сообщения от hangover
 
Регистрация: 08.10.2009
Сообщений: 53

Сообщение от Octane
А зачем на сервер в формате JSON данные передавать?
с инпутов собираються данные. и передаеться имя инпута - значение.

а насчет json_decode
JSON был валидный проблема была в том что все кавчки эскейпились.
когда сделал элементраное
$d= str_replace('\\','',$_REQUEST['data']);

все заработало
Ответить с цитированием
  #4 (permalink)  
Старый 25.06.2010, 02:01
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

Сообщение от hangover
с инпутов собираються данные. и передаеться имя инпута - значение.
А обычная URI строка "name1=value1&name2=value2" уже не модно?
Ответить с цитированием
  #5 (permalink)  
Старый 25.06.2010, 02:04
Аспирант
Отправить личное сообщение для hangover Посмотреть профиль Найти все сообщения от hangover
 
Регистрация: 08.10.2009
Сообщений: 53

а как тогда передать такую строку если имена инпутов изначально не известны.
хотя проще было бы и так.
просто URI строку собрать.. и передать)

я просто зациклился на $.getJSN() и долбил в одну точку)
Ответить с цитированием
  #6 (permalink)  
Старый 25.06.2010, 02:08
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

http://api.jquery.com/serialize/
Ответить с цитированием
  #7 (permalink)  
Старый 02.07.2010, 22:14
Новичок на форуме
Отправить личное сообщение для _AXE_ Посмотреть профиль Найти все сообщения от _AXE_
 
Регистрация: 02.07.2010
Сообщений: 1

Octane, не модно Уже усторевает такой подход.
Поэтому:
$.getJSON('php/module/feedback.php', {
	    data: {
	       param: JSON.stringify(sData)
	    }
	}, feedbackStatus);

$param = json_decode($_POST['param']);
Ответить с цитированием
  #8 (permalink)  
Старый 02.07.2010, 22:21
Аспирант
Отправить личное сообщение для hangover Посмотреть профиль Найти все сообщения от hangover
 
Регистрация: 08.10.2009
Сообщений: 53

_AXE_,
но для етого вроде нужно доп. плагин подключать.

проблема была в том что все кавычки " эскейпились при передаче.
только полсе str_replace('\\','',$var) работат json_decode.
Ответить с цитированием
  #9 (permalink)  
Старый 02.07.2010, 23:58
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

Сообщение от _AXE_
Уже усторевает такой подход.
С чего вы это взяли? Покажите, где написано, что лучше передавать данные на сервер в JSON-строке?

Последний раз редактировалось Octane, 03.07.2010 в 00:01.
Ответить с цитированием
  #10 (permalink)  
Старый 04.07.2010, 11:09
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от _AXE_
Уже усторевает такой подход.
Чушь не гони.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Преобразование данных с сервера в JSON frolvict Общие вопросы Javascript 1 04.04.2010 12:26
не работает JSON в JQuery 1.4.1 mcpro jQuery 7 22.03.2010 17:56
Jquery, Dynatree и JSON antirek jQuery 6 01.09.2009 15:00
формирую форму из данных полученных AJAx belbek AJAX и COMET 5 26.06.2009 15:01
Синхронный запрос данных по AJAX Shasoft AJAX и COMET 2 03.03.2009 14:07