我正在尝试更新mysql表中的一行。但是,当我单击注册按钮时,它不会做任何事情。我在用Laravel。
下面是我的update函数:
public function update(Request $request)
{
$idpawn = $request['idprestamo'];
$paynumber = $request['numeropago'];
$payqty = $request['payqty'];
$statuspawns = statuspawns::find($idpawn,$paynumber);
$updateqty = $statuspawns->totalpayment - $payqty;
if($updateqty == "0"){
$status = "Pay";
}
else{
$status = "Partial Payment";
}
$statuspawns->total = $updateqty;
$statuspawns->status = $status;
$statuspawns->save();
return redirect()->back();
}谢谢你的帮助。
发布于 2018-10-26 15:06:52
我认为问题可能在于您需要方括号而不是括号,因为它是一个数组。$request['idprestamo'] $request['numeropago'] $request['payqty']
我还想补充一句,你也可以这样做,也可以用魔法方法.
$request->numeropago
发布于 2018-10-26 15:08:21
您必须以这样的方式访问Request -- $request->input_name而不是$request('input_name'),因为它是一个Laravel数据采集
最后,您的功能将如下所示:
public function update(Request $request)
{
$idpawn = $request->idprestamo;
$paynumber = $request->numeropago;
$payqty = $request->payqty;
$statuspawns = statuspawns::find($idpawn,$paynumber);
$updateqty = $statuspawns->totalpayment - $payqty;
if($updateqty == "0"){
$status = "Pay";
}
else{
$status = "Partial Payment";
}
$statuspawns->total = $updateqty;
$statuspawns->status = $status;
$statuspawns->save();
return redirect()->back();
}更新
在Laravel5.7中,要更新行,必须使用update()方法而不是save()方法。
发布于 2018-11-12 15:21:40
您没有正确检索记录。您必须只将id传递给find()。因为你已经传递了两个参数。
将此语句更改为.。
$statuspawns = statuspawns::find($idpawn,$paynumber);至
$statuspawns = statuspawns::find($idpawn);现在,您可以更新要更新的列。
https://stackoverflow.com/questions/53011408
复制相似问题