mercredi 5 octobre 2016

How to delete session data when page refresh in Laravel5?

I made mail send program with Laravel5, that works so well.

public function sendMail(Request $request){
    $data = session() -> all();

    // send mail to User and Admin
    Mail::send(['text' => 'test.mailtouser'], $data, function($message) use($data){
        $message -> to($data['email']) -> subject("To User");
    });
    Mail::send(['text' => 'test.mailtoadmin'], $data, function($message) use($data){
        $message -> to('admin@example.com') -> subject("To Admin");
    });

    return view('test.complete');
}

But if an user do page reflesh, mail send everytime. So I need to delete session data when page refresh. I wish to do this.

public function sendMail(Request $request){
    $data = session() -> all();

    // send mail to User and Admin
    Mail::send(['text' => 'test.mailtouser'], $data, function($message) use($data){
        $message -> to($data['email']) -> subject("To User");
    });
    Mail::send(['text' => 'test.mailtoadmin'], $data, function($message) use($data){
        $message -> to('admin@example.com') -> subject("To Admin");
    });

    if( page reload... ){
        $request -> session() -> flush();
        return redirect('/');
    }
    else { // page reload not yet...
        return view('test.complete');
    }
}

Any solves?



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire