Запрос ajax с нулевыми значениями Codeigniter

#php #jquery #json #ajax #codeigniter

#php #jquery ( jquery ) #json #ajax #codeigniter #jquery

Вопрос:

, я пытаюсь получить некоторые значения из базы данных по ajax-запросу в codeigniter … но объект json возвращает null ([]), когда я помещаю console.log…Мне нужна помощь, пожалуйста!!

JAVASCRIPT

 function list_president() {
        var section = "1";
        $.post(baseurl   'votos/load_politic', section,
            function(data) {
                console.log(data);
            });
    }
  

КОНТРОЛЛЕР

 public function load_politic()
{
if ($this->input->is_ajax_request()) {

      $section = $this->input->post('section');
    $result  = $this->politic->get_president($section);

    echo json_encode($result);
  }
}
  

Модель

 public function get_president($section){


  $this->db->select("p.POLITIC_NAME, p.POLITIC_LASTNAME, p.POLITIC_SIDE, p.POLITIC_CHARGE");
  $this->db->from("politics p");
  $this->db->where("SECTION_ID",$section);

  $result= $this->db->get();

  return $result->result();
}
  

Спасибо за помощь!!

Комментарии:

1. Если вы получаете это по идентификатору, то вы извлекаете одну строку, поэтому вам нужно вернуть $result->row() . После этого, пожалуйста, в вашем $.post вызовите просто console.log(данные) и скажите мне, что вы получаете.

2. @Franco Я изменил $result->result(); …на $result->row() … и вернул null =(

3. @charlietfl указал вам правильное направление, это ускользнуло от моего внимания, потому что я всегда использую ajax cal для таких вещей. Но я надеюсь, что его предложение решило вашу проблему.

Ответ №1:

Вы не отправляете пару ключ / значение на сервер…просто значение.

Таким образом, нет $_POST['section'] , что в основном то, что $this->input->post('section'); есть

Попробуйте изменить

  var section = "1";
  

Для

  var section = {section: "1"};
  

Вы также не проверяете, что отправляется или проверяет $result , возвращает ли что-нибудь