2013-12-08 80 views
1

我有一个注册表单,它一直在工作,直到它没有。我相信我对代码做了些什么,因为我是laravel 4的新手,所以我无法确定我做错了什么。现在我越来越laravel 4重定向问题

此网页有一个重定向循环。

这是路线文件:

Route::get('/','[email protected]'); 

Route::get('/login', '[email protected]'); 

Route::get('/signup', '[email protected]'); 

/*handled by controller to register the user that signed up*/ 
Route::get('/register', '[email protected]'); 

/* Handle authenticating a user when loggin in*/ 


Route::post('register', array(
    'uses' => '[email protected]', 
    '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"; 
     } 

    } 

感谢您的帮助:)

回答

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', '[email protected]'); 
+0

感谢Anam的帮助。将尝试一下 – spacemonkey