我发现了很多类似的问题,但没有人与我的问题有关,但是,这是我的
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’)到达空!!
UPDATE
这是我的数据:如AJAX请求之前所示:
data = {“sum”:”2.250″,”info”:[{“id”:”6″,”name”:”bla”,”price”:”1.000″}]}
请帮忙.提前致谢.
解决方法
首先,我要感谢所有回复.
实际上这是几个错误,
第一:正如@bipen所说,数据必须作为对象而不是字符串发送.当我尝试它时,它没有用,因为我没有把单引号放在数据周围
实际上这是几个错误,
第一:正如@bipen所说,数据必须作为对象而不是字符串发送.当我尝试它时,它没有用,因为我没有把单引号放在数据周围
$.ajax({ url: url,data: {'data': data} });
第二:正如@foxmulder所说,contentType拼写错误,应该是ContentType
所以正确的代码是:
$.ajax({ url: url,ContentType: 'application/json',data: {'data': data} }).done(function(response){ alert('success'); }).fail(function(jqXHR,errorThrown){ alert('Failed! ERROR: ' + errorThrown); });
$data = $this->input->post('data'); $data = json_decode($data); $sum = $data->sum; $info_obj = $data->info; $item_qty = $info_obj[0]->quantity;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。