Php 如何解决:传递给Illuminate\Database\Grammar::parameterize()的参数1必须是给定字符串的数组类型
我想存储Php 如何解决:传递给Illuminate\Database\Grammar::parameterize()的参数1必须是给定字符串的数组类型,php,laravel,Php,Laravel,我想存储日期,但出现了问题 输入 日期 控制器 公共函数存储(请求$Request){ 如果($request->category_id==null){ return redirect()->back()->带有('error','Please Purchase The Product'); }否则{ //多路径数据插入开始// $purchase=新购买(); $purchase->purchase\u no=$request->purchase\u no; $purchase->date=
日期
,但出现了问题
输入
日期
控制器
公共函数存储(请求$Request){
如果($request->category_id==null){
return redirect()->back()->带有('error','Please Purchase The Product');
}否则{
//多路径数据插入开始//
$purchase=新购买();
$purchase->purchase\u no=$request->purchase\u no;
$purchase->date=$request->date;
$purchase->description=$request->description;
$purchase->status='0';
$purchase->created_by=Auth::user()->id;
DB::事务(函数()使用($request,$purchase){
如果($purchase->save()){
//购买详情插入开始//
$category\u id=count($request->category\u id);
对于($i=0;$i<$category_id;$i++){
$purchaseDetail=新的purchaseDetail();
$purchaseDetail->date=date('Y-m-d',strottime($request->date));
$purchaseDetail->purchase\u id=$purchase->id;
$purchaseDetail->supplier_id=$request->supplier_id[$i];
$purchaseDetail->category_id=$request->category_id[$i];
$purchaseDetail->product_id=$request->product_id[$i];
$purchaseDetail->购买数量=$request->购买数量[$i];
$purchaseDetail->unit_price=$request->unit_price[$i];
$purchaseDetail->购买价格=$request->购买价格[$i];
$purchaseDetail->折扣金额=$request->折扣金额[$i];
$purchaseDetail->ppn=$request->ppn[$i];
$purchaseDetail->status='0';
$purchaseDetail->save();
}
}
});
}
//重定向
return redirect()->route('purchase.view')->带有('success','purchase Added Successfully');
}
当我存储它时,会出现如下错误:
传递参数1以照亮\Database\Grammar::parameterize()必须
类型为数组,字符串给定,在D:\Project中调用
Laravel\alc pos\vendor\Laravel\framework\src\light\Database\Query\Grammars\Grammar.php
在线869
我尝试更改此$purchase->date=$request->date代码>
进入这个$purchase->date=date('Y-m-d',strottime($request->date))代码>其显示一个错误,如:
strtotime()要求参数1为字符串,数组给定
似乎$request->date
是一个数组。通过执行echo打印来确认($request->date,true)
确认$request->date
确实是一个数组,如果是,您可以查看它的结构。从那里开始
这里还没有那么多事情要做
编辑:
最终解决方案(由@JulienBaldy在评论部分提供):
改变
$purchase->date=$request->date代码>
进入
$purchase->date=date('Y-m-d',strottime($request->date[0])代码>看起来,$request->date
是一个数组。通过执行echo打印来确认($request->date,true)
确认$request->date
确实是一个数组,如果是,您可以查看它的结构。从那里开始
这里还没有那么多事情要做
编辑:
最终解决方案(由@JulienBaldy在评论部分提供):
改变
$purchase->date=$request->date代码>
进入
$purchase->date=date('Y-m-d',strottime($request->date[0])代码>如果您尝试此功能?=>$采购->日期=日期('Y-m-d',标准时间($request->日期->格式('Y-m-d H:i:s'));调试$request->date时,它的输出是什么?@JulienBaldy这会发生:调用数组上的成员函数format(),这是否回答了您的问题?如果你试试这个?=>$采购->日期=日期('Y-m-d',标准时间($request->日期->格式('Y-m-d H:i:s'));调试$request->date时,它的输出是什么?@JulienBaldy这会发生:调用数组上的成员函数format(),这是否回答了您的问题?是的,它是一个数组,输出:array([0]=>2020-10-26)
所以试试这个:$purchase->date=date('Y-m-d',strottime($request->date[0]->format('Y-m-dh:i:s')@阿德里安,不,还是一样的问题。。很抱歉,如果在这个问题上问了很多im新手:')@JulienBaldy发生这种情况:调用上的成员函数format()string@Naldaff哦,是的,对不起。没有格式$采购->日期=日期('Y-m-d',标准时间($request->date[0]);是的,它是一个数组,输出:array([0]=>2020-10-26)
所以试试这个:$purchase->date=date('Y-m-d',strottime($request->date[0]->format('Y-m-dh:i:s')@阿德里安,不,还是一样的问题。。很抱歉,如果在这个问题上问了很多im新手:')@JulienBaldy发生这种情况:调用上的成员函数format()string@Naldaff哦,是的,对不起。没有格式$采购->日期=日期('Y-m-d',标准时间($request->date[0]);
<div class="col-lg-6">
<div class="form-group">
<label>Date</label>
<input type="date" name="date" id="date" class="form-control form-control-sm">
</div>
</div>
Controller
public function store(Request $request){
if($request->category_id == null){
return redirect()->back()->with('error', 'Please Purchase The Product');
} else{
// Multipale Data Insert start //
$purchase = new purchase();
$purchase->purchase_no = $request->purchase_no;
$purchase->date = $request->date;
$purchase->description = $request->description;
$purchase->status = '0';
$purchase->created_by = Auth::user()->id;
DB::transaction(function() use($request,$purchase) {
if($purchase->save()) {
// Purchase Details Insert Start //
$category_id = count($request->category_id);
for ($i=0; $i < $category_id; $i++) {
$purchaseDetail = new purchaseDetail();
$purchaseDetail->date = date('Y-m-d', strtotime($request->date));
$purchaseDetail->purchase_id = $purchase->id;
$purchaseDetail->supplier_id = $request->supplier_id[$i];
$purchaseDetail->category_id = $request->category_id[$i];
$purchaseDetail->product_id = $request->product_id[$i];
$purchaseDetail->buying_qty = $request->buying_qty[$i];
$purchaseDetail->unit_price = $request->unit_price[$i];
$purchaseDetail->buying_price = $request->buying_price[$i];
$purchaseDetail->discount_amount = $request->discount_amount[$i];
$purchaseDetail->ppn = $request->ppn[$i];
$purchaseDetail->status = '0';
$purchaseDetail->save();
}
}
});
}
// Redirect
return redirect()->route('purchase.view')->with('success', 'Purchase Added Successfully');
}