Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在我的php控制器中获得ajax答案_Php_Ajax_Codeigniter - Fatal编程技术网

如何在我的php控制器中获得ajax答案

如何在我的php控制器中获得ajax答案,php,ajax,codeigniter,Php,Ajax,Codeigniter,我正在做一个新的项目,它是在一个很好的框架上,这个框架是CodeIgniter,但是当我想使用ajax时,我遇到了一些问题,我对此非常不好。我想在我的控制器上获得select的值,但我不知道为什么,可能是因为我不擅长ajax,所以无法获得正确的值。当我想知道ajax请求发送给我什么时,它显示一个布尔值 在Chrome的网络应用程序中,我收到了一个请求,请求发送正确的值,即annee:select的值,但无法在我的控制器上获取 这是我的ajax: $('#annee').change(functi

我正在做一个新的项目,它是在一个很好的框架上,这个框架是CodeIgniter,但是当我想使用ajax时,我遇到了一些问题,我对此非常不好。我想在我的控制器上获得select的值,但我不知道为什么,可能是因为我不擅长ajax,所以无法获得正确的值。当我想知道ajax请求发送给我什么时,它显示一个布尔值

在Chrome的网络应用程序中,我收到了一个请求,请求发送正确的值,即annee:select的值,但无法在我的控制器上获取

这是我的ajax:

$('#annee').change(function(){
    var annee = $('#annee').val();
    console.log(annee);

    $.ajax({
        url: "admin",
        type: 'post',
        data: {annee:annee},
    })
});
这是我的模型cmip_Model.php:

function getWhere($annee) {

    $query = $this->db->get_where('cmip_surcharges_go', array('annee' => 
$annee));
    return $query->result ();
}
这是我的控制器CMIP.php:

public function admin()
{
    $this->load->model('cmip_model');
    $cmip_Obj = new cmip_model();
   
    $surcharges = $cmip_Obj->getWhere($this->input->post('annee'));

    $data = array();
    $data['surcharges'] = $surcharges;

    $data['page_title'] = " :: Admin";
    $data['main_content'] = 'client/CMIP/admin';
    $data['active'] = 'CMIP';
    $this->load->view('_includes/template', $data);
}
这是我的观点:

  année: <select id="annee">
        <option value="">--année--</option>
        <option value="2019">2019</option>
        <option value="2020">2020</option>
        <option value="2021">2021</option>
        <option value="2022">2022</option>
        <option value="2023">2023</option>
        <option value="2024">2024</option>
    </select>
 <?php var_dump($this->input->post('annee'));
 var_dump($surcharges);
 ?>
实际上,我是从我的var转储中得到的:

B:\wamp\www\cotationtro\applications\frontoffice\views\client\CMIP\admin.php:380: 布尔值
false

在Ajax URL中进行更改

url: "<?= base_url('controller_name/function_name')?>",

你能澄清一下吗:你正在通过查看Chrome开发者工具的网络选项卡来检查的输出,对吗?哦,不,我在我的页面上直接看到了答案!仅查看网络选项卡上ajax的请求:根据我的评论中的信息,已删除,因为它完全错误,因为其他地方的信息误导回答,这可能是它的重复,这很奇怪,因为答案的编号就像2019、2020,但我会尝试,谢谢!我不明白这里的流程。您有一个页面,我想它不在上面,它对函数admin进行ajax调用,并将视图呈现为ajax响应?你想完成什么。此外,在Ajax调用中使用单引号或双引号来声明变量——这是一个属性名,而不是变量,使用标识符也可以。名称annee中没有特殊字符需要在该上下文中将其表示为字符串。@Quentin找到了。@Alex根据问题,我给出了答案。但也不是因为使用了适当的措辞,而是使用单引号或双引号来声明Ajax中的变量call answer got downvoted,而不是edit。