php - 如何在我的 php 控制器中获得 ajax 答案
问题描述
我正在开发一个新项目,它位于一个不错的框架上,即 CodeIgniter,但是当我想使用 ajax 时遇到了一些问题(我对此非常不满意)。我想在我的控制器上获取 select 的值,但我不知道为什么(可能是因为我对 ajax 不满意)我无法获得正确的值。当我想知道 ajax 请求发送给我什么时,它会显示一个布尔值。
在 Chrome 的网络应用程序上,我收到了发送正确值的请求,即“annee:选择的值”,但无法在我的控制器上获取它。
这是我的 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 dump 得到的:
B:\wamp\www\cotationtro\applications\frontoffice\views\client\CMIP\admin.php:380: boolean false
解决方案
更改 Ajax URL
url: "<?= base_url('controller_name/function_name')?>",
推荐阅读
- java - http状态500:eclipse,tomcat,mysql中的内部服务器错误
- r - 为什么列表的暗淡为空?
- relational-database - 在有界条件的经典关系代数中找到模式
- php - 如何创建数据透视表 laravel?
- java - 如何将变量传递给不同的方法
- amazon-web-services - (google-chrome:23461): Gtk-WARNING **: 12:34:29.640: 无法打开显示:
- google-analytics - 谷歌标签管理器数据层
- python - Python 的 lambda 函数列表
- bash - 在 bash 脚本中反转命令行参数
- java - 从逗号分隔的整数的字符串数组映射的连续天数