Php 我试图将循环数据插入数据库,但它给出了一个错误

Php 我试图将循环数据插入数据库,但它给出了一个错误,php,laravel-5.2,Php,Laravel 5.2,我试图使用laravel将循环数据插入数据库,但它返回以下错误: Grammar.php第118行中的ErrorException: 传递给Illumb\Database\Grammar::parameterize()的参数1必须是数组类型,字符串给定,在第678行的C:\xampp\htdocs\laravel\App\vendor\laravel\framework\src\illumb\Database\Query\Grammars\Grammar.php中调用并定义 查看: <in

我试图使用laravel将循环数据插入数据库,但它返回以下错误:

Grammar.php第118行中的ErrorException: 传递给Illumb\Database\Grammar::parameterize()的参数1必须是数组类型,字符串给定,在第678行的C:\xampp\htdocs\laravel\App\vendor\laravel\framework\src\illumb\Database\Query\Grammars\Grammar.php中调用并定义

查看:

<input name="product_id[]" type="hidden" class="rid" value="13">
<input type="hidden" name="product_name[]" value="Popins"><input type="hidden" name="product_code[]" value="2323">
<input name="unit_price[]" type="hidden" value="170">
<input name="quantity[]" type="text" value="2" id="" >

控制器

for($i=0; $i<count($product_name);$i++){
    $newSafety = new saleItems;
    $newSafety->product_id = $request->unit_price;
    $newSafety->sale_id   = $request->unit_price;
    $newSafety->product_code   = $request->product_code;
    $newSafety->product_name   = $request->product_name;
    $newSafety->quantity   = $request->quantity;
    $newSafety->unit_price   = $request->unit_price;
    $newSafety->gross_total= $request->unit_price;
    $newSafety->save();
}
for($i=0;$iproduct\u id=$request->单价;
$newSafety->sale\u id=$request->单价;
$newSafety->product\u code=$request->product\u code;
$newSafety->product\u name=$request->product\u name;
$newSafety->quantity=$request->quantity;
$newSafety->单价=$request->单价;
$newSafety->gross\u total=$request->unit\u price;
$newSafety->save();
}

看起来您通过请求传递的每个输入都是数组,您试图将它们分配给$newSafety对象的非数组属性

试试这个:

for($i=0; $i<count($product_name);$i++){
    $newSafety = new saleItems;
    $newSafety->product_id = $request->unit_price[i];
    $newSafety->sale_id   = $request->unit_price[i];
    $newSafety->product_code   = $request->product_code[i];
    $newSafety->product_name   = $request->product_name[i];
    $newSafety->quantity   = $request->quantity[i];
    $newSafety->unit_price   = $request->unit_price[i];
    $newSafety->gross_total= $request->unit_price[i];
    $newSafety->save();
for($i=0;$iproduct\u id=$request->单价[i];
$newSafety->sale_id=$request->单价[i];
$newSafety->product_code=$request->product_code[i];
$newSafety->product_name=$request->product_name[i];
$newSafety->quantity=$request->quantity[i];
$newSafety->unit_price=$request->unit_price[i];
$newSafety->gross_total=$request->unit_price[i];
$newSafety->save();

}

看起来您通过请求传递的每个输入都是数组,您试图将它们分配给$newSafety对象的非数组属性

试试这个:

for($i=0; $i<count($product_name);$i++){
    $newSafety = new saleItems;
    $newSafety->product_id = $request->unit_price[i];
    $newSafety->sale_id   = $request->unit_price[i];
    $newSafety->product_code   = $request->product_code[i];
    $newSafety->product_name   = $request->product_name[i];
    $newSafety->quantity   = $request->quantity[i];
    $newSafety->unit_price   = $request->unit_price[i];
    $newSafety->gross_total= $request->unit_price[i];
    $newSafety->save();
for($i=0;$iproduct\u id=$request->单价[i];
$newSafety->sale_id=$request->单价[i];
$newSafety->product_code=$request->product_code[i];
$newSafety->product_name=$request->product_name[i];
$newSafety->quantity=$request->quantity[i];
$newSafety->unit_price=$request->unit_price[i];
$newSafety->gross_total=$request->unit_price[i];
$newSafety->save();

}

您使用的是哪种版本的Laravel?请不要在您显示的12行中的第678行标记SPAMAndus@RiggsFolly我正在使用laravel 5.2和Grammar.php,你说第768行是一个laravel文件。我没有弄清楚你使用的是哪一版本的laravel?请不要在你的12行中标记SPAMAnd,这是第678行显示us@RiggsFolly我使用的是laravel 5.2和Grammar.php,你说第768行是一个laravel文件,我没有做到