0
votes

I am using codeigniter version 3+, Jquery version 3+. I am trying to get data through ajax request but it does not return anything. And when I inspect and see its request url is wrong but did not get how i modify that.

Ajax request

 var site_url = '<?=base_url()?>';
 var id = $(this).find("option:selected").attr('value');
     $.ajax({
                type : 'POST',
                dataType : 'json',
                url: '<?=base_url()?>'+'index.php/talika_12/get_data_by_id_ajax',
                data: {user_id:id},
                success: function(data) {
                   alert(data);
                   $('#inst_name').text(data.talika_12_user_name);
                   $('#inst_account_no').text(data.talika_12_user_account_no);
            }
       });

Controller

 public function get_data_by_id_ajax(){
      $user_id = $_POST['user_id'];
      $data = $this->talika_12_m->get_data_by_id($user_id);
      $ajax_response_data = array(
        'talika_12_user_name' => $data[0]->talika_12_user_name ,
        'talika_12_user_account_no' => $data[0]->talika_12_user_account_no , 
      );
      echo json_encode($ajax_response_data);
}

Model

 public function get_data_by_id($id){
       $where_clause = array('talika_12_user_id' => $id);
       $this->db->limit(1);
       $val = $this->db->get_where('table_12', $where_clause)->result();
      return $val;
 }

Get request url is ( Request URL:http://localhost/test/codeIgniter/talika_12/%3C?=base_url()?%3Eindex.php/talika_12/get_data_by_id_ajax )

1
The problem is in the url of your ajax - Adhan Timothy Younes
You can try like this url: "<?=base_url('index.php/talika_12/get_data_by_id_ajax')?>" - Adhan Timothy Younes
Why not you simplify it as, url: "<?php echo base_url('index.php/talika_12/get_data_by_id_ajax'); ?>"? - Sarvap Praharanayuthan
after trying your method url is this ---- localhost/test/codeIgniter/index.php/talika_12/… - Destroyer.0211
what is your expexted request url? try removing base_url url : 'index.php/talika_12/get_data_by_id_ajax' - Keith Asilom

1 Answers

0
votes

Please try this code

var id = $(this).find("option:selected").attr('value');
    $.ajax({
                type : 'POST',
                dataType : 'json',
                url: "<?=base_url()?>index.php/talika_12/get_data_by_id_ajax'",
                data: {user_id:id},
                success: function(data) {
                    alert(data);
                   $('#inst_name').text(data.talika_12_user_name);
                   $('#inst_account_no').text(data.talika_12_user_account_no);


            }
       });

changed url portion url: "<?=base_url()?>index.php/talika_12/get_data_by_id_ajax'", otherwise you can use url:<?= site_url('talika_12/get_data_by_id_ajax')