отправка данных JSON на сервер - PullRequest
0 голосов
/ 15 декабря 2009

У меня есть этот код для отправки данных:

function insert_new_image()
{
    var ids = [];
    $('.be-imagecontainer').each(function(i){
        ids[i] =$(this).find('span').text();
    });

    var jsonids = {'ids' : ids}

    var url  = base_url + 'ajax/get_new_images';
    $.ajax({
        url : url,
        data : {'ids' : jsonids},
        success : function(response)
        {
            $('#be-images ul').prepend(response)
        },
        dataType: 'html'
    });
}

и этот код с сервера (PHP):

function get_new_images()
    {
        $ids = json_decode($_GET['ids'], true);

        echo Kohana::debug($ids);
    }

сервер отвечает

null

как я могу заставить это работать? Я пытаюсь отправить на сервер данные json, содержащие массив идентификаторов

Ответы [ 3 ]

2 голосов
/ 15 декабря 2009

Используйте json2.js для кодирования объекта Javascript как JSON:

 data: {ids: JSON.stringify(jsonids)};

См. этот пост для получения дополнительной информации.

0 голосов
/ 15 декабря 2009

Имеете ли вы var_dump переменную $ _GET? Может быть, вы не отправляете правильную вещь. Также проверьте php.log

Другой вопрос, Кохана, что за вещь отвечает?

0 голосов
/ 15 декабря 2009

Данные, которые вы отправляете обратно, не в формате JSON, к моменту, когда ваш скрипт их читает, это должен быть массив PHP.

Либо используйте: var jsonids = "{'ids' : ids}" (в JS) или $ids = $_GET['ids']; (в PHP)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...