简体   繁体   中英

How to solve undefined variable

view page:

 @if(count($applications)>0)
<table class= "table table-striped">
 <tr>
    <th>Email</th>
     <th>Date Applied</th>
     <th>Leave Type</th>
     <th>Leave Status</th>
     <th></th>


 </tr>
 @foreach($applications as $application )
 <tr>
    <td>{{$application ->user->email}}</td>
    <td>{{$application ->dateApplied}}</td>
    <td>{{$application ->leaveType}}</td>
    <td>{{$application ->leaveStatus}}</td>
    <td>
     {!!Form::open(['action'=>['ApplicationAdminController@destroy', $application ->appId], 'method'=>'DELETE'])!!}
     {{Form::hidden('_method', 'DELETE')}}
     {{Form::submit('Delete', ['class' => 'btn btn-danger'])}}
     {!!Form::close()!!}
    </td>


</tr>
 @endforeach
</table>

controller:

 public function  destroy($appId)


{

    $application = Application::find( $appId);
    $application ->delete();

 $this->deleteLeave($appId);
    return redirect('/applicationAdminHistory')->with ('success', 'Application Removed');
}

public function deleteLeave($appId){

    $user_id = Auth::id();
    $req = DB::table('leave_summaries')
    ->where('user_id',$user_id)
    ->increment($leaveType,$day);

    }    

What I want to do is when click delete button the application will deleted and will do increments at the leave_summaries table. The increment at the leave_summaries based on the value of day and leave type in the application that has been deleted. After i run this code i got undefined variable error as shown below:

运行此代码后的结果

In this Code Please Pass $user_id, $leaveType,$day:

 public function deleteLeave($appId){


        $req = DB::table('leave_summaries')
        ->where('user_id',$user_id)
        ->increment($leaveType,$day);

        }   

You didn't defined these three variables: $user_id, $leaveType, $day

You need to pass these values as parameters into the deleteLeave() method or these values had to be defined before the method called.

public function deleteLeave($user_id, $leaveType, $day){
    $req = DB::table('leave_summaries')
        ->where('user_id',$user_id)
        ->increment($leaveType, $day);
}   

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM