【发布时间】:2016-05-27 12:50:45
【问题描述】:
我正在使用 Laravel 框架,并且正在尝试创建 Ajax 请求,因此我可以将表单数据发送到控制器。 问题是,我正在传递一个字符串,但是在控制器中,当我尝试 JSON_decode 时,它说我给它一个数组而不是一个字符串。 我做错了什么?
查看(ajax)
function getData() {
var name = $('#name').val();
var tin = $('#tin').val();
var password = $('#password').val();
var currency = $('#currency').val();
var data = {"name": name, 'tin': tin, 'password': password, 'currency': currency};
var obj = JSON.stringify({"name": name, 'tin': tin, 'password': password, 'currency': currency});
console.log(obj);
$.ajax({
type: "POST",
url: "teste",
data: obj,
success: function (result) {
alert(result);
}
});
}
控制器:
$data = $_POST;
//$string = json_encode($data);
$test = json_decode($data);
echo $test->name ;
//echo "data: $string, gravada com sucesso!";
die;
如果有人可以帮助我...
刚刚解决。
$.ajax({
type: "POST",
url: "teste",
data: {"name": name, 'tin': tin, 'password': password, 'currency': currency},
success: function (result) {
alert(result);
}
});
在控制器中,我编码然后解码..它工作 谢谢:)
【问题讨论】:
-
$_POST 是一个数组,把
json_decode改成json_encode -
它说我正在尝试获取非对象的属性
-
我刚开始学习 laravel
标签: php jquery ajax laravel-5.2