如何在Laravel中单击更新MySql值

时间:2018-06-11 05:46:34

标签: php laravel

我正在创建一个网站。因此,有一个表格显示用户。在我的数据库中,我为Pending存储了0,为Action行下的Approved存储了1。如果某个用户为0,则此表中将显示待处理,如果用户有1个已批准,则将显示。现在我想当有人点击此Pending按钮时,我想将数据库值更新为1.我尝试了如下。但是,当我点击Pending按钮时,它会给我这个错误 -

Sorry, the page you are looking for could not be found. 

在我的网络浏览器地址栏中,我得到了正确的ID - http://localhost/cheapfares/invoice/approvededit/49

而且我无法更新数据库值。

我该如何解决这个问题?

查看页面。 (all-invoice.blade.com)

@if($Invoice->invoicestatus =="Pending")
<td><a href="approvededit/{{ $Invoice->invoicereference }}"><input type="submit" name="pending" value="Pending" class="btn btn-warning"></a></td>
@else
<td><a href="rejectededit/{{ $Invoice->invoicereference }}"><input type="submit" name="approved" value="Approved" class="btn btn-success"></a></td>
@endif

控制器页面。 (InvoicesController.php)

public function approvededit(Request $request, $invoicereference)
    {
        // Add Validation
        DB::table('invoices')
            ->where('invoicereference', $invoicereference)
            ->update(['invoicestatus' => 1]);
        //$request->session()->flash('Msg', 'Successfully Approved !!');
        return redirect('invoices.all-invoice');
    }

路线。

Route::get('/approvededit/{invoicereference}', 'InvoicesController@approvededit');

1 个答案:

答案 0 :(得分:0)

在使用路线时更新当前路线

http://localhost/cheapfares/invoice/approvededit/49

approvededit(这不是资源路由功能,因此您需要正确添加

Route::get('/invoice/approvededit/{invoicereference}','InvoicesController@approvededit');