如果从输入获取值(where子句),为什么ajax jQuery无法正常工作

时间:2019-01-14 13:21:59

标签: jquery ajax codeigniter

我有要在“模态”中显示的数据。数据是从我在phpmyadmin中尝试过的查询中获得的,并且可以正常工作。我还使用带有时间语句“ CURRENT_DATE”的查询尝试了它,它也起作用。但是,当我用手动输入的时间信息(手动输入的月份和年份)对其进行尝试时,查询无法正常工作。

这是我的查询的第一项,它的工作仍在

<script type="text/javascript">

    $(".monitor").click(function(){

        $("#list-format").html("");
        let nama_puskesmas = $(this).data('nama');
        let id_puskesmas = $(this).data('id');


        $.ajax({
            url     : 'get_data',
            method  : 'post',
            dataType: 'json',
            data    : {id_puskesmas:id_puskesmas},
            success : function(response){

                $.each(response, function(i, obj){
                    $("#list-format").append("<li>"+obj.format+"</li>");
                });

                $("#title-modal").html(nama_puskesmas);
                $("#exampleModalCenter").modal('show');



            }



        })      

    })
</script>

这是我的控制器(工作)

public function get_data(){
    $id_puskesmas = $this->input->post('id_puskesmas',TRUE);

    $data = $this->app_model->ambil200($id_puskesmas);
    echo json_encode($data);
}

此模型(工作)

    function ambil200($id){

        $query = $this->db->query
("select tb_format.format from tb_format where tb_format.id not in
(select penyakit.format from penyakit where penyakit.id_puskesmas =$id 
 group by penyakit.format having MAX(MONTH(penyakit.waktu_upload)) = MONTH(CURRENT_DATE))");


        return $query->result();


    }

现在我要更改查询,例如。 ajax jquery代码与上面相同,但是控制器和模型不同

控制器(完成工作)(我更改了get_data,我也将其更改为ajax代码)

public function get_data_status(){
    $id_puskesmas = $this->input->post('id_puskesmas',TRUE);
    $year = $this->input->post('tahun');
    $month = $this->input->post('bulan');
    $data = $this->app_model->post_data($id_puskesmas,$year,$month);
    //die(print_r($data));
    echo json_encode($data);
}

模型(新查询无效)。不同的是输入$ month和$ year。

public function post_data($id,$year=null,$month=null){
    if($year == null){
        $year = date("Y");
        }
        if($month == null){
        $month = date("m");
        }


    $query = $this->db->query("select tb_format.format 
        from tb_format 
        where tb_format.id not in
        (select penyakit.format from penyakit where penyakit.id_puskesmas =$id
        AND YEAR(waktu_upload) = '$year' AND MONTH(waktu_upload) = '$month'  
        group by penyakit.format)
        ");

    //die(print_r($query));
    return $query->result();
}

此数据未显示,有人可以帮我吗?

0 个答案:

没有答案