使用 ajax codeigniter 时出现 500(内部服务器错误)

500 (Internal Server Error) while using ajax codeigniter

我遇到错误 jquery.min.js:4 POST http://localhost/Speakertest/index.php/Welcome/ajax 500 (Internal Server Error)

我在 codeigniter 中调用 ajax 函数

添加查询后出现错误 https://i.imgur.com/4kDJSQf.png

这是我的ajax功能代码

    public function ajax()
{



    $size="";
    $eprice="";

    $size = $this->input->post('size');
    $sprice = $this->input->post('sprice');
    $eprice = $this->input->post('eprice');

    var_dump($size);
    var_dump($sprice);
    var_dump($eprice);


      $query = $this->db->query("SELECT * from info_user Where user_status ='1'"); 

                  if(!empty($size)){

                      $query  .= $this->db->query(" and city in('$size')"); 
                  }

                  if(!empty($sprice) && !empty($eprice)){

                      $query  .=  $this->db->query(" and charge_per_hour >='$sprice' and charge_per_hour <='$eprice'"); 
                  }

                foreach( $result as $row )
                {

                            echo $row->name; 
                            echo $row->charge_per_hour; 
                            echo $row->city; 

                 }
}

这是产生错误的行

$query = $this->db->query("SELECT * from info_user Where user_status ='1'"); 

                  if(!empty($size)){

                      $query  .= $this->db->query(" and city in('$size')"); 
                  }

                  if(!empty($sprice) && !empty($eprice)){

                      $query  .=  $this->db->query(" and charge_per_hour >='$sprice' and charge_per_hour <='$eprice'"); 
                  }

                foreach( $result as $row )
                {

                            echo $row->name; 
                            echo $row->charge_per_hour; 
                            echo $row->city; 

                 }

这是我的 ajax 通话

 $.ajax({
            url:"http://localhost/Speakertest/index.php/Welcome/ajax",
            type:'post',
            data:{size:size,sprice:ui.values[ 0 ],eprice:ui.values[ 1 ]},
            success:function(result){
                $('.product-data').html(result);
            }
        });

删除 mysql 查询后它工作正常。如何摆脱 POST http://localhost/Speakertest/index.php/Welcome/ajax 500(内部服务器错误)

用这个

更改您的代码
    $query = "SELECT * from info_user Where user_status ='1'"; 
    if(!empty($size)){
        $query  .= " and city in('".$size."')"; 
    }
    if(!empty($sprice) && !empty($eprice)){
        $query  .=  " and charge_per_hour >='".$sprice."' and 
        charge_per_hour <='".$eprice."'"; 
    }

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

     foreach( $result as $row )
     {
         echo $row->name; 
         echo $row->charge_per_hour; 
         echo $row->city; 
     }