如何访问Laravel5中jQueryAjax帖子发送的数组?

如何访问Laravel5中jQueryAjax帖子发送的数组?,jquery,ajax,laravel,laravel-5,Jquery,Ajax,Laravel,Laravel 5,在我的jqueryajax请求中 $('#form').on('submit', function (e) { e.preventDefault(); $.ajax({ type: "POST", url: "/ajaxpage", data:{ selected_data: JSON.stringify(se

在我的jqueryajax请求中

$('#form').on('submit', function (e) {

            e.preventDefault();

            $.ajax({
                type: "POST",
                url: "/ajaxpage",
                data:{
                    selected_data: JSON.stringify(selected_data),
                    },
                dataType : 'json',
                success: function( data ) {

                    console.log(data);

                }
            });

        });
在我的控制器方法中,我试图通过如下循环来访问我从ajax发送的数组

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Response;

class AjaxController extends Controller
{

    public function postData(Request $request)
    {
        foreach ($request['selected_data'] as $data => $value)
        {
           $user->roles()->attach(role->id, ['pivot_colmumn' => $value]);
        }
    }
}

我认为这不是一个合适的方式。对于单个变量,我使用
$request['var_name']
,它可以工作,但对于数组,它会给出
500内部服务器错误。
那么我访问数组值吗?

您可以通过为ajax设置添加令牌来修复:

除了将CSRF令牌作为POST参数进行检查外,VerifyCsrfToken中间件还将检查X-CSRF-token请求头。例如,您可以将令牌存储在HTML元标记中:

<meta name="csrf-token" content="{{ csrf_token() }}">

您可以通过为ajax设置添加令牌来修复:

除了将CSRF令牌作为POST参数进行检查外,VerifyCsrfToken中间件还将检查X-CSRF-token请求头。例如,您可以将令牌存储在HTML元标记中:

<meta name="csrf-token" content="{{ csrf_token() }}">

我实际上是在
jquery-ajax-post
请求中使用了
JSON.stringify(selected\u-data)
,该请求实际上将其转换为字符串


所以我需要使用
json\u decode()
来获得一个数组,然后我可以像往常一样简单地循环遍历它。

我实际上在
jquery ajax post
请求中使用了
json.stringify(selected\u data)
,该请求将其转换为字符串


因此,我需要使用
json\u decode()
获得一个数组,然后我可以像往常一样简单地循环遍历它。

要访问从ajax请求发送的数据并将其转换为数组,您可以在控制器中执行以下操作:

foreach(json_decode($request->selected_data) as $data)
{
    dd($data)
}

要访问从ajax请求发送的数据并将其转换为数组,可以在控制器中执行以下操作:

foreach(json_decode($request->selected_data) as $data)
{
    dd($data)
}

您的意思是
$request->var_name
$request->all()


Laravel request return collection

您的意思是
$request->var_name
$request->all()


Laravel请求返回集合

您应该在控制器中解码从ajax请求发送的json

$select_data = json_decode($request->get('select_data'));
foreach($select_data as $key => $value){}

您应该在控制器中解码从ajax请求发送的json

$select_data = json_decode($request->get('select_data'));
foreach($select_data as $key => $value){}

当请求对象是一个对象时,您正试图以数组的形式访问该请求对象。而不是使用[]使用->

当请求对象是一个对象时,您正试图以数组的形式访问该请求对象。而不是使用[]使用->

我已经做了所有这些。唯一的问题是我不知道如何访问laravelI中的阵列。我已经做了所有这些。唯一的问题是我不知道如何访问laravel中的阵列