2014-09-25 96 views
0

的ErrorException發生在我的代碼$用戶>密碼=哈希::使(輸入::得到( '密碼')); 說password_hash():密碼必須是一個字符串。我使用laravel框架錯誤:password_hash():密碼必須是laravel字符串

  $user = new User(); 
      $user->username = Input::get('username'); 
      $user->password = Hash::make(Input::get('password')); 
      if($user->save()) 
      { 
       return Redirect::route('home')->with('success','You register successfully. You can now login'); 
      } else { 
       return Redirect::route('home')->with('fail','An error occurred while creating user. Please try again.'); 
      } 
+1

你應該編輯你的問題,並在那裏寫上你的表單代碼 – 2014-09-25 10:25:15

+0

大概'Input :: get('password')'不包含任何值,所以我會檢查你的HTML表單是否真的有這個名字的輸入字段。 – martinstoeckli 2014-09-25 11:13:51

+0

@martinstoeckli我已經檢查過它,但它似乎即使你沒有輸入,你也不會看到這樣的錯誤。 – 2014-09-25 17:05:19

回答

1

我經歷了同樣的問題,使用WAMP 2.4裏面自帶PHP 5.4,但升級到WAMP 2.5裏面自帶的PHP 5.5後,將其解決,使多數民衆贊成的解決方案數量1:

  • 如果您正在運行PHP的較低版本,那麼你可能要升級。

還在尋找這並不需要升級,因爲在Laravel的文檔,它提到5.4+支持爲Laravel 4.2

+0

我在hhvm上遇到過這個問題,任何解決方案? – astroanu 2016-09-21 18:26:47

+0

沒關係,只投你傳遞哈希::使()以字符串..叫哈希::使參數(123)將導致此錯誤而哈希::讓(「123」)不 – astroanu 2016-09-21 18:45:28

0

我有類似的問題,一臺Linux機器,扔在

ErrorException 
password_hash(): Password must be a string 
上的解決方案

通過從PHP 5.4升級到PHP PHP 5.5它解決它在我的Laravel的環境。

相關問題