Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何解决php(laravel)中未定义索引的错误_Php_Laravel - Fatal编程技术网

如何解决php(laravel)中未定义索引的错误

如何解决php(laravel)中未定义索引的错误,php,laravel,Php,Laravel,我使用Post方法将数组从视图发送到控制器。这是我的密码 控制器:Session::put('isCheck',$isCheck) 这就是我给isChecked数组赋值的方式 var isChecked = [ <?php $isCheck = ""; if (Session::has('isCheck')) { $isCheck = Session::get('isCheck'); } foreach ($isCheck as

我使用Post方法将数组从视图发送到控制器。这是我的密码

控制器:
Session::put('isCheck',$isCheck)

这就是我给isChecked数组赋值的方式

   var isChecked = [
    <?php
    $isCheck = "";
    if (Session::has('isCheck')) {
        $isCheck = Session::get('isCheck');
    }
    foreach ($isCheck as $isCheck) {
        $status = $isCheck;
        ?>
        <?php echo $status; ?>,
    <?php } ?>
   ];

但我得到了未定义的索引副本检查错误。帮帮我吧

你不能像那样将javascript数组传递给php,你必须将数组转换成JSON并发送出去

应该如此

   var data = JSON.stringify({
                        isChecked: isChecked,
                        duplicateIsChecked: duplicateIsChecked
                    });
要在控制器中获取JSON负载,可以使用

$payload = Input::json()->all();
然后,要访问该属性,可以将其引用为
$payload['DuplicateSchecked']
&
$payload['isChecked']

您是否检查了Ajax调用的标头以确保其发送了任何数据?在您发布的代码中,您将变量分配给数据中的两个值,但没有显示在何处声明这些变量值。

您是否尝试打印$payload,它提供了什么?你的URL正确吗?是的,我试着打印$payload['isChecked']。但它是说未定义的索引已检查。你能发布你的JS AJAX调用和控制器代码吗?从控制器我正在为已检查创建会话,在视图中,我正在使用GET Session方法,并将该数组分配给JS变量isCheckedTry,使用console.log(JS_array)记录你的JS数组在发送AJAX调用之前,];这是在您发送或接收Ajax调用的页面中吗?我从控制器向视图发送硬代码数组,在视图中,我使用上述代码在全局数组变量中获取该数组,以便我可以在整个视图中使用该数组,在使用该数组后,我再次使用POST方法向控制器发送更新的数组。您命名为您的变量已检查(大写I),但在ajax数据中,您指的是已检查(小写I)。Javascript是区分大小写的,所以这可能是问题所在。不,不,在错误地发布que时,我写了大写字母i。在我使用的代码中,我只进行了检查。我没有得到它
isChecked
duplicateschecked
javascript变量是否正确?是。我已经更新了我的代码。
   var data = JSON.stringify({
                        isChecked: isChecked,
                        duplicateIsChecked: duplicateIsChecked
                    });
$payload = Input::json()->all();