Laravel 5.3 - 查询生成器中缺少 "value" 属性
Laravel 5.3 - Missing "value" attribute in query builder
我是 Laravel 和 Yajra 数据表的新手。我开发了一个 Web 应用程序(在 windows XAMPP 中)并且一切正常,直到我最近在共享主机 (UNIX) 中上传了我的项目,数据表无法加载视图并抛出错误消息。
我收到的错误信息是:
ErrorException in Request.php line 38:
Undefined index: value
in Request.php line 38
at HandleExceptions->handleError('8', 'Undefined index: value', '/home/posgb/public_html/boatMain/vendor/yajra/laravel-datatables-oracle/src/Request.php', '38', array()) in Request.php line 38
我比较了我的机器和服务器中查询构建器输出的 DD 结果,发现 "value" 属性从 "search" 数组中丢失。
我的查询:
$query = DB::table('item_subcat')
->leftJoin('item_customized', 'item_subcat.subcatID', '=', 'item_customized.subcatID')
->join('item_cat', 'item_subcat.itemCatID', '=', 'item_cat.itemCatID')
->select(array('item_subcat.subcatID', 'item_subcat.itemCode', 'item_subcat.itemName', 'item_cat.itemCatName', 'item_customized.customize_name', DB::raw('IF(item_subcat.is_categorize = "0", item_subcat.itemPrice, item_customized.price) AS ITEMPRICE'), 'item_subcat.is_activate', 'item_customized.itemCustomID'));
dd($query);
DD 在我的电脑中的结果:
#parameters: array:7 [
"draw" => "1"
"columns" => array:7 [
0 => array:5 [ …5]
1 => array:5 [ …5]
2 => array:5 [ …5]
3 => array:5 [ …5]
4 => array:5 [ …5]
5 => array:5 [ …5]
6 => array:5 [ …5]
]
"order" => array:1 [
0 => array:2 [ …2]
]
"start" => "0"
"length" => "10"
"search" => array:2 [
"value" => "" /*This is the missing value */
"regex" => "false"
]
"branch" => "ALL"
]
}
我服务器的DD结果:
+request: ParameterBag {#41
#parameters: array:7 [
"draw" => "1"
"columns" => array:7 [
0 => array:5 [ …5]
1 => array:5 [ …5]
2 => array:5 [ …5]
3 => array:5 [ …5]
4 => array:5 [ …5]
5 => array:5 [ …5]
6 => array:5 [ …5]
]
"order" => array:1 [
0 => array:2 [ …2]
]
"start" => "0"
"length" => "10"
"search" => array:1 [
"regex" => "false"
]
"branch" => "ALL"
]
}
请指教我应该在哪里查看数组中缺少的 "value",因为它导致我无法生成数据表。 TYVM,供那些花时间查看此内容的人使用。
原因是我的服务器中的 PHP.ini 设置默认不允许 GET 和 POST 请求中的空值。
我是 Laravel 和 Yajra 数据表的新手。我开发了一个 Web 应用程序(在 windows XAMPP 中)并且一切正常,直到我最近在共享主机 (UNIX) 中上传了我的项目,数据表无法加载视图并抛出错误消息。
我收到的错误信息是:
ErrorException in Request.php line 38: Undefined index: value in Request.php line 38 at HandleExceptions->handleError('8', 'Undefined index: value', '/home/posgb/public_html/boatMain/vendor/yajra/laravel-datatables-oracle/src/Request.php', '38', array()) in Request.php line 38
我比较了我的机器和服务器中查询构建器输出的 DD 结果,发现 "value" 属性从 "search" 数组中丢失。
我的查询:
$query = DB::table('item_subcat')
->leftJoin('item_customized', 'item_subcat.subcatID', '=', 'item_customized.subcatID')
->join('item_cat', 'item_subcat.itemCatID', '=', 'item_cat.itemCatID')
->select(array('item_subcat.subcatID', 'item_subcat.itemCode', 'item_subcat.itemName', 'item_cat.itemCatName', 'item_customized.customize_name', DB::raw('IF(item_subcat.is_categorize = "0", item_subcat.itemPrice, item_customized.price) AS ITEMPRICE'), 'item_subcat.is_activate', 'item_customized.itemCustomID'));
dd($query);
DD 在我的电脑中的结果:
#parameters: array:7 [
"draw" => "1"
"columns" => array:7 [
0 => array:5 [ …5]
1 => array:5 [ …5]
2 => array:5 [ …5]
3 => array:5 [ …5]
4 => array:5 [ …5]
5 => array:5 [ …5]
6 => array:5 [ …5]
]
"order" => array:1 [
0 => array:2 [ …2]
]
"start" => "0"
"length" => "10"
"search" => array:2 [
"value" => "" /*This is the missing value */
"regex" => "false"
]
"branch" => "ALL"
]
}
我服务器的DD结果:
+request: ParameterBag {#41
#parameters: array:7 [
"draw" => "1"
"columns" => array:7 [
0 => array:5 [ …5]
1 => array:5 [ …5]
2 => array:5 [ …5]
3 => array:5 [ …5]
4 => array:5 [ …5]
5 => array:5 [ …5]
6 => array:5 [ …5]
]
"order" => array:1 [
0 => array:2 [ …2]
]
"start" => "0"
"length" => "10"
"search" => array:1 [
"regex" => "false"
]
"branch" => "ALL"
]
}
请指教我应该在哪里查看数组中缺少的 "value",因为它导致我无法生成数据表。 TYVM,供那些花时间查看此内容的人使用。
原因是我的服务器中的 PHP.ini 设置默认不允许 GET 和 POST 请求中的空值。