Laravel autryzacja wchodzi bez hasła

0

Mam taki problem piszę aplikacje w laravelu i teraz jak podam tylko nazwę użytkownika bez hasła to wchodzi natomiast jak już z hasłem to nie.

kod widoku```html
@extends('layout.index')
@section('content')

<form action="{{" url('logowanie')="url('logowanie')" }}="}}" method="post">
Twoj login
<input type="text" id="login2" size="5" class="form-control" name="name" value="{{Input::old('name')}}">
Twoje hasło
<input type="password" id="haslo" size="5" class="form-control" name="haslo">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
<button class="btn btn-primary">Zaloguj się</button>
@endsection

Kod controllera

```php
    public function logowanie() {
    
       $haslo = Input::get('haslo');
    //$a = Hash::make("");
    //print $a;
    //print Input::get('haslo');
  $user = array(
    'name' => Input::get('name'),
    'password' => $haslo
  );
  //var_dump($user);
  //var_dump($user);
  if (Input::get('name') == "" and Input::get('haslo') == "" ) {
    return Redirect('error')->with('login_error','Uzupełnij pole login i hasło');
    //print "3";
  }
  if (Auth::attempt($user))
  {
  //print Auth::User()->id;
    return Redirect('login');
  }
  else {
    //print Input::get('login');
    return Redirect('error')->with('login_error','Nieprawidłowy login lub hasło');
  }
    }
0

Mam taki problem piszę aplikacje w laravelu i teraz jak podam tylko nazwę użytkownika bez hasła to wchodzi natomiast jak już z hasłem to nie.

Ale wchodzi w sensie, że loguje czy że przechodzi walidację?
Najprościej jest zdebugować pokolei - sprawdzić czy dane które otrzymujesz są ok, potem czy założone warunki przez Ciebie działają poprawnie a na końcu sprawdzasz czy hasło w bazie (a raczej pewnie wygenerowane hashe) rzeczywiście nie jest puste i czy pasuje do wzorca z bazy.

0

Nie odkrywaj koła na nowo i użyj funkcjonalności, która już jest w Laravel - https://laravel.com/docs/5.5/authentication#authentication-quickstart

Jeśli chcesz zobaczyć jak odbywa się logowanie to tutaj masz metodą za to odpowiedzialną - https://github.com/laravel/framework/blob/5.5/src/Illuminate/Foundation/Auth/AuthenticatesUsers.php#L29

0
hapertown napisał(a):

Mam taki problem piszę aplikacje w laravelu i teraz jak podam tylko nazwę użytkownika bez hasła to wchodzi natomiast jak już z hasłem to nie.

Ale wchodzi w sensie, że loguje czy że przechodzi walidację?
Najprościej jest zdebugować pokolei - sprawdzić czy dane które otrzymujesz są ok, potem czy założone warunki przez Ciebie działają poprawnie a na końcu sprawdzasz czy hasło w bazie (a raczej pewnie wygenerowane hashe) rzeczywiście nie jest puste i czy pasuje do wzorca z bazy.

Debukowałem w ten sposób, że drukowałem zawartość zmiennej $user i dobre dane pokazywał natomiast zauważyłem, że pole w bazie remember_token ma wartość null.

2

to najwyżej będą wchodzić bez hasła, co ty taki nieufny jesteś? więcej wiary w ludzi, nie zamykaj się w emocjonalnej piwnicy ziom

0

To jest teraz dziwne, że jak podłączyłem tą inicjację laravela do innej tabeli to wszystko działa.

0

Teraz jak zrobiłem sql tej tabeli w tamtej bazie do nowej bazy to zauważyłem jedną rzecz, bo w tamtej tabeli miałem jeden wpis użytkownika i do tego wpisu użytkownika logowanie działa dobrze, a do pozostałych czyli tych nowo rejestrowanych skrypt zachowuje się tak jak w tamtych przypadkach.

0

Już rozwiązałem ten błąd. Miałem zły parametr w rejestracji hasło było przekazywane zamiast Input::get('haslo") było ;Input::get("password") ach ta moja spostrzgawczość .

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