1

私は登録フォームを持っていますが、機能しなくなるまで機能していました。私はlaravel 4が初めてなので、コードで何かをしたと確信しているので、間違ったことを特定できません。今、私は得ています

このウェブページにはリダイレクトループが含まれてい。

これはルート ファイルです。

Route::get('/','MainController@index');

Route::get('/login', 'MembersController@login');

Route::get('/signup', 'MembersController@signup');

/*handled by controller to register the user that signed up*/
Route::get('/register', 'MembersController@register');

/* Handle authenticating a user when loggin in*/


Route::post('register', array(
  'uses' => 'MembersController@register',
  'as' => 'members.register'
));

そして、これはフォームのオープニングです:

@section('content')
{{ Form::open(array('route' => 'members.register')) }}    

......

{{ Form::close() }}
@stop

これは、エラーが発生した場合に、サインアップ ページに再度リダイレクトして表示するための検証です (壊れるまでそれを行いました)。

public function register()
    {
        $rules = array(
            # place-holder for validation rules
            'firstname' => 'Required|Min:3|Max:40|Alpha',
            'lastname' => 'Required|Min:3|Max:40|Alpha',
            'email'     => 'Required|Between:3,64|Email|Unique:users',
            'country'       => 'Required',
            'password'  =>'Required|AlphaNum|Between:7,15|Confirmed',
            'password_confirmation'=>'Required|AlphaNum|Between:7,15'

        );

        /*Create new user if no user with entered email exists. Use validator to ensure all fields are completed*/
        $user = new User;

        $validator = $this->validate(Input::all(), $rules);
        if ($validator->fails())
        {

            return Redirect::to('register')->withErrors($validator);

        }else{
            echo "Success";
        }

    }

助けてくれてありがとう :)

4

1 に答える 1

3

次の行を変更します

return Redirect::to('register')->withErrors($validator);

これとともに

return Redirect::back()->withInput()->withErrors($validator);

ルート レジスタを無限に呼び出しています。

このルートも削除します。ポストルートのみが必要です。

/*handled by controller to register the user that signed up*/
Route::get('/register', 'MembersController@register');
于 2013-12-08T10:16:36.947 に答える