Laravel błąd no mesaage

0

Mam taki problem gdy mam widok do logowania i rejestracji i jak klikam zaloguj albo zarejestruj, to wyskakuje mi z tego samego kontrolera komunikat

MethodNotAllowedHttpException
No message

Daje kod źródłowy

kontroller

    public function register2() {
    
      
	$rules = array(
	    
	  'login' => 'required|min:4|unique:users',
	  'haslo' => 'required|same:haslo2',
	  'email' => 'required|email',
	  'haslo' => 'required|min:6',
	  'email' => 'required|email|unique:users',
      
	);
	  
      
	$validation = Validator::make(Input::all(), $rules);
	if (($validation->fails()) )
	  {

		return Redirect('register')->withErrors($validation)->withInput();
	
	    
	  }
	  
	$user = new \App\User;
	$user->email = htmlspecialchars(Input::get('email'));
	$user->password = Hash::make(Input::get('haslo'));
	$user->login = htmlspecialchars(Input::get('login'));
	if ($user->save())
	{

		return Redirect('rejestracja_sukces');
	}	
    
    
    }

I widok.

  <div class="row">
            <div class="col-12">
                <h2><a href="{{ url('register2') }}" title="">Rejestracja</a></h2>
                <form action="" method="post" enctype="multipart/form-data">
                    @csrf

                    <div class="p-form-validation{{ $errors->has('first_name') ? ' is-error' : '' }}">
                        <label for="first_name">Login</label>
                        <input class="p-form-validation__input" name="first_name" type="text" id="first_name" value="{{ old('first_name') }}" placeholder="login">

                    </div>
                    <div class="p-form-validation{{ $errors->has('first_name') ? ' is-error' : '' }}">
                        <label for="first_name">E-mail</label>
                        <input class="p-form-validation__input" name="first_name" type="text" id="first_name" value="{{ old('email') }}" placeholder="E-mail">

                    </div>
                    <div class="p-form-validation{{ $errors->has('last_name') ? ' is-error' : '' }}">
                        <label for="last_name">Hasło</label>
                        <input class="p-form-validation__input" name="last_name" type="password" id="last_name" value="{{ old('last_name') }}" placeholder="hasło">

                    </div>
                    <div class="p-form-validation{{ $errors->has('last_name') ? ' is-error' : '' }}">
                        <label for="last_name">Wpisz jeszcze raz Hasło</label>
                        <input class="p-form-validation__input" name="last_name" type="password" id="last_name" value="{{ old('last_name') }}" placeholder="hasło">

                    </div>
                    <div class="p-form-validation{{ $errors->has('last_name') ? ' is-error' : '' }}">
                        <div align=center>
			  <input class="p-form-validation__input" name="last_name" type="submit" id="last_name" >
                        </div>

                    </div>
                  </form>
	    </div>
  </div>

Ale według mnie to musi być coś z widokiem bo ja w kontrolerze nic nie dam, to też taki sam błąd wyskakuje.

1

W routach masz oczywiście odwołanie do metody ?

1

W routingu masz wpiętą metodę register2 jako GET, a wysyłając formularz wykonujesz żądanie POST.

GET i POST to są metody w protokole HTTP, stąd ten wyjątek MethodNotAllowedHttpException. On oznacza, że routing został znaleziony, ale zezwala tylko na GET, a nie na POST. Dodaj do routingu nowy wpis obsługujący POST.

1 użytkowników online, w tym zalogowanych: 0, gości: 1