проблема с возвратом закодированного в json ответа после jQuery POST в codeigniter - PullRequest
0 голосов
/ 24 марта 2011

У меня проблемы с получением ответа после использования jQuery post.Сценарий, который я создаю, отправляет данные правильно и правильно вставляет в базу данных, однако, когда я пытаюсь вернуть ответ в кодировке json, данные не принимаются.

Вот код, который я использую:

jQuery.ajax({
     success: function(data) {
            if (data)
            {
            alert("DATA RECEIVED");
            }
            },
          data: {action: 'create', section: JSON.stringify(values)},
          type: 'POST',
          dataType: 'json',
            url: "fields/sections/create" 
        });

В моем контроллере у меня есть

$section = json_decode($this->input->post('section'));


            $this->load->model('mdl_fields');


            $section_id = $this->mdl_fields->create_section($section->name, $section->row);

            if($section_id) {

                $data=array(
"section" => $section_id,
"confirm" => 'Section Has Been Created Successfully'
);
return json_encode($data);
}

Я проверил, есть $ section_id, и я напечатал json_encode ($ data), чтобы проверить, что это правильно, что это так, но я все еще не получаюответ.

Я рвал на себе волосы, пытаясь решить эту проблему в течение последних нескольких часов, поэтому любая помощь будет оценена.

Спасибо

Ответы [ 2 ]

1 голос
/ 24 марта 2011

Может быть, вам просто нужно сделать что-то вроде

echo json_encode($data);

, которое генерировало бы простой вывод структуры $ data в формате JSON-совместимомВзгляните на json_encode , он возвращает строку и НЕ производит никакого вывода!

0 голосов
/ 24 марта 2011

Попробуйте: echo json_encode($data);

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