如何使用Laravel 5.2以相同的方法添加和更新表行


How to add and update table row in same method using Laravel 5.2

我需要使用Laravel 5.2在My Controller中的一个方法中插入数据并更新表行。我的表名为"permission"。下面是我的方法:

public function addPermission(Request $request, $id,  Permission $permission)
{
    if ($permission = Permission::findOrFail($id));{
     $this->validate($request, [
        'status'   => 'required'

    ]);
    $permission = new Permission;
    $permission->status = $request->input('status');
    $permission->project_id       = $id;
    $permission->collaborator_id =  $request->input('cid');
    $values = $request->all();
    $permission->fill($values)->save();
    return redirect()->back()->with('info','Permission has been updated to your Collaborator successfully');
    }
    else  {
     $this->validate($request, [
        'status'   => 'required'

    ]);
    $permission = new Permission;
    $permission->status = $request->input('status');
    $permission->project_id       = $id;
    $permission->collaborator_id =  $request->input('cid');
    $permission->save();
    return redirect()->back()->with('info','Permission has been added to your Collaborator successfully');
   }  
}

我得到以下错误

语法错误,意外'else' (T_ELSE)

我做错了什么?

语法错误

if ($permission = Permission::findOrFail($id)); { ......

删除";"

if ($permission = Permission::findOrFail($id)) { .....