2017-06-02 55 views
0

我正在Laravel 5.2,我有這種形式與一些領域。提交時,我正在檢查aganist的一些規則。我在收到確認消息時會回覆錯誤消息不打印在刀片laravel 5.2

print_r($ messages);死;

在控制器中。

但它沒有顯示刀片中的錯誤消息。

它在我的本地主機上運行良好,但是我託管它的服務器是bluemix服務器。它根本沒有顯示錯誤信息。我也嘗試過在那裏調試。控制器中有錯誤消息。但沒有顯示在視圖上。

 $validator = Validator::make(Input::all(), static::$rules, static::$messages); 
     $validator->setAttributeNames(static::$names); 
     if ($validator->fails()) { 
      $messages = $validator->messages(); 
      return Redirect::back()->withInput()->withErrors($messages); 
     } 

鑑於我打印出來作爲

<input type="text" class="form-control" id="FirstName" name="FirstName" value="{{ old('FirstName') }}"> 
<div class="error">{{ $errors->first('FirstName') }}</div> 
+0

代替的print_r($消息);死;你可以在laravel中使用dd($ messages)。 – aimme

+0

如果使用' - > get('FirstName')'而不是' - > first'會怎麼樣? – Marwelln

+0

@Marwelln htmlentities()期望參數1是字符串,給定的數組(View:/home/vcap/app/htdocs/resources/views/user/register.blade.php)我有這個 –

回答

0

有錯誤重定向只是閃爍的驗證錯誤消息到會話。看起來你的錯誤沒有閃現。我猜你沒有使用中間件組web。您需要將路由放置在web中間件組中,以便會話正常工作。

Route::group(['middleware' => ['web']], function() { 
    Route::get('/', function() { 
     return view('welcome'); 
    }); 
}); 

編輯

你也可以簡化您的代碼如下所示。

public function test(Request $request) 
{ 
    $validator = Validator::make($request->all(), static::$rules, static::$messages, static::$names); 

    if ($validator->fails()) { 
     return redirect()->back()->withErrors($validator)->withInput(); 
    } 

    // handle success 
} 

或者

public function test(Request $request) 
{ 
    $this->validate($request, static::$rules, static::$messages, static::$names); 

    // handle success 
} 
+0

是的,我唱的Web中間件 –

+0

@FazeelaAbuZohra,可以在運行'PHP工匠路線:list'並張榜公佈結果?還提到顯示錶單的路線。 – Sandeesh

+0

它在我的localhost中運行良好,問題出在我的bluemix服務器上。在那裏他們不提供ssh控制。 –