2016-12-14 13 views
0

こんにちは、私の支払いがLaravel - バリダブル - ERR_TOO_MANY_REDIRECTS

ステップ1、ステップここではお支払い手続きのための1つの以上のフォーム

を持っている - 入力件のデータをフォームに。
ステップ2 - ValideデータStep 1;
ステップ3 - フォーム入力他のデータ。
ステップ4 - バリデートデータStep 2;第二の検証で

、バリデータは私が返す失敗した場合...

return redirect()->back()->withErrors($validator)->withInput(); 
問題は、第二の検証が失敗した場合、それは私にこのエラーint型を与える、ということである

彼ブラウザ

ERR_TOO_MANY_REDIRECTS


私は)(それがリダイレクトのでによるものだと思う - >バック()前のStep 1に、前のバリデータに...そしてループするために入ります。

今I'haveは

return View('staff.cedola', $data)->withErrors($validator); 

ビューを返すことは、これは正しい方法です解決?

+1

なぜ同じステップ1とステップ2が同じルートにあるのですか?それらを分割することをお勧めします...それは問題を少なくします。あなたは 'myroute/step/1'と' myroute/step/2'のようなものを持つことができます...また、あなたのコントローラとビューでいくつかのコードを共有してください。 – prateekkathal

答えて

0

ミドルウェアまたはconstruct()メソッドの内部では、URLをページかどうかをチェックする必要があります。現在のページの場合は、リダイレクトをスキップする必要があります。

以下は例ですが、あなたがそのアイデアを得ることを願っています。

//if under verificated page no need check to avoid keep redirect 
if (!request()->is('member/verified-profile')) 
{ 
    //check Member Porfile Verification 
    $this->beforeFilter('@checkUserProfileVerification'); 
    if (!request()->is('member/verified-mobile')) 
    { 
     //check Member Mobile Verification 
     $this->beforeFilter('@checkUserMobileVerification'); 
    } 
} 
関連する問題