这是我的 AJAX 请求
data = JSON.stringify(data);
url = base_url + "index.php/home/make_order";
//alert(url);
var request = $.ajax({
url: url,
type: 'POST',
contentType: 'application/json',
data: data
});
request.done(function(response){
alert('success');
});
request.fail(function(jqXHR, textStatus, errorThrown){
alert('FAILED! ERROR: ' + errorThrown);
});
我的问题是,当它到达 PHP CI 控制器时$this->input->post('data')
, it is empty.
这是我的数据:如 AJAX 请求之前所示:
data = {"sum":"2.250","info":[{"id":"6","name":"bla","price":"1.000"}]}
首先我要感谢所有的回复。
其实是犯了一些错误First:正如@bipen所说,数据必须作为对象而不是字符串发送。当我尝试时,它不起作用,因为我没有把数据周围用单引号括起来
$.ajax({
url: url,
type: 'POST',
contentType: 'application/json',
data: {'data': data}
});
Second:正如@foxmulder所说,内容类型拼写错误,应该是内容类型所以正确的代码是:
$.ajax({
url: url,
type: 'POST',
ContentType: 'application/json',
data: {'data': data}
}).done(function(response){
alert('success');
}).fail(function(jqXHR, textStatus, errorThrown){
alert('FAILED! ERROR: ' + errorThrown);
});
仅供参考,以防有人在 PHP 获取方面遇到问题,具体方法如下:
$data = $this->input->post('data');
$data = json_decode($data);
$sum = $data->sum;
$info_obj = $data->info;
$item_qty = $info_obj[0]->quantity;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)