2017-01-23 140 views
0

我使用默認的laravel auth方法。
當我嘗試重置密碼時,一切工作正常,直到我嘗試發送重置表單。Laravel 5.3密碼重置錯誤,沒有任何錯誤日誌

在這一刻,它只是給我一個任何日誌的錯誤。
我知道,因爲我加入了以下行App\Exceptions\handler.php

public function report(Exception $exception) 
{ 
    Artisan::call('sms:basic'); 

    parent::report($exception); 
} 

所以,我recieving是發生錯誤發送通知的錯誤。我沒有登錄,新密碼無效。

發生這種情況時,laravel.log文件爲空。所以我不知道爲什麼不工作。

還有就是我用的路線:

Auth::routes(); 

有觀點文件。

@extends('layouts.public') 

@section('content') 

     <!-- RESET FORM --> 
     <!--===================================================--> 
     <div class="cls-content"> 
      <div class="cls-content-sm panel"> 
       <div class="panel-body background-black fix-margin-top"> 
        <div class="text-left"><img style="height: 90px; width: auto;margin-left: -25px;" src="{{ url('/img/logoTorqueWhite.svg') }}" alt="" class=""></div> 
       </div> 
      </div> 
      <div class="cls-content-sm panel "> 
       <div class="panel-body fix-margin-top"> 
        <div class="pull-right"><a class="black" href="{{ url('/') }}"><i class="fa fa-times"></i></a></div> 
        <div class="row"> 
         <div class="col-xs-12 col-sm-8 vert-line"> 
          <p>Réinitialiser votre mot de passe</p> 
          @if (session('status')) 
           <div class="alert alert-success"> 
            {{ session('status') }} 
           </div> 
          @endif 
          <form method="POST" role="form" action="{{ url('/password/reset') }}"> 
           <div class="form-group text-left{{ $errors->has('email') ? ' has-error' : '' }}"> 
            <label>Courriel</label> 
            <input id="email" type="email" name="email" class="form-control" placeholder="" value="{{ old('email') }}"> 
            @if ($errors->has('email')) 
             <span class="form-control"> 
              <strong>{{ $errors->first('email') }}</strong> 
             </span> 
            @endif 
           </div> 

           <div class="form-group text-left{{ $errors->has('password') ? ' has-error' : '' }}"> 
            <label>Mot de passe</label> 
            <input type="password" name="password" class="form-control" placeholder=""> 
            @if ($errors->has('password')) 
             <span class="form-control"> 
              <strong>{{ $errors->first('password') }}</strong> 
             </span> 
            @endif 
           </div> 

           <div class="form-group text-left{{ $errors->has('password_confirmation') ? ' has-error' : '' }}"> 
            <label>Confirmer le mot de passe</label> 
            <input type="password" name="password_confirmation" class="form-control" placeholder=""> 
            @if ($errors->has('password_confirmation')) 
             <span class="form-control"> 
              <strong>{{ $errors->first('password_confirmation') }}</strong> 
             </span> 
            @endif 
           </div> 

           <div class="col-xs-12 no-padding"> 
            <div class="form-group text-right"> 
             <input name="reset" type="submit" class="btn btn-torque" value="RÉINITIALISER"> 
            </div> 
           </div> 
          </form> 
         </div> 
         <div class="col-xs-12 col-sm-4"> 
          <div class="valign text-right"> 
           <p>Contactez-nous<br> 
           (819) 679-2944<br> 
           [email protected]</p> 
          </div> 
         </div> 
        </div> 
        <div class="row text-left"> 
         {{--<div class="col-xs-12"> 
         Vous avez oublié votre mot de passe? <a href="/password/reset">Cliquez ici</a><br> 
         Vous n'avez pas encore de compte Torque? Créé un compte 
         </div>--}} 
        </div> 
       </div> 
      </div> 
     </div> 
     <!--===================================================--> 
@endsection 

我看到其他地方有人要求加入這條航線:

Route::get('test', function(){ 
    dd (bcrypt('raw_password') == "encrypted_password_in_db"); 
}); 

還給我假,男生們都在說它想返回true。 對此沒有其他解釋,但也許它可以幫助你幫助我。我真的不知道這是什麼意思。

+0

登錄後是否嘗試重置密碼? – Rahi

+0

我嘗試重置時退出。當我使用自定義更改密碼錶單登錄時,我可以更改密碼。 –

回答

0

當您保存新的密碼使用

Hash::make('newpassword')

它會工作後:

Route::get('test', function(){ 
    dd (Hash::check('raw_password', 'encrypted-password')); 
}); 

的Laravel總是使用隨機鹽漬密碼,所以你不能用=檢查=

+0

當我嘗試你的代碼行時,我得到了錯誤的結果。 –

+0

另外,我把Hashids的安全性降低了然後bcrypt?你可以做一個Hash :: decode('anything'),而當你使用bcrypt時,沒有內置的解碼。 –