2014-06-22 69 views
1

查看laravel withinput不工作的數組

<td>   
      {{Form::label('start_date', 'Start Date', array('class' => 'awesome'));}} 
      <input type="date" name ="start_date" class="input-block-level" placeholder="Start Date" /> 
     </td> 
     <td>  
      {{Form::label('end_date', 'End Date', array('class' => 'awesome'));}} 
      <input type="date" name ="end_date" class="input-block-level" placeholder="End Date" /> 
     </td> 
    </tr> 
    <tr> 
     <td>   
      {{ Form::text('answer[]', null, array('class'=>'input-block-level', 'placeholder'=>'Option')) }} 
      {{ Form::text('answer[]', null, array('class'=>'input-block-level', 'placeholder'=>'Option')) }} 
      {{ Form::text('answer[]', null, array('class'=>'input-block-level', 'placeholder'=>'Option')) }} 
      {{ Form::text('answer[]', null, array('class'=>'input-block-level', 'placeholder'=>'Option')) }} 
     </td> 
    </tr> 

在這裏,我必須做一些驗證,如果錯誤我需要重定向到預裝的數據在同一個頁面..

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

答案[ ]被陣列瓶頸在這裏.. 輸入是不工作陣列..它顯示以下錯誤

ErrorException 
htmlentities() expects parameter 1 to be string, array given (View: C:\xampp\htdocs\sms\app\views\questions\create.blade.php) 

有什麼想法?

回答

2

我有一個類似的問題。顯然,根據this post,解決方案是手動添加索引到每個輸入。

所以嘗試:

for($i=0; $i<4; $i++){ 
    {{ Form::text("answer[$i]", null, array('class'=>'input-block-level', 'placeholder'=>'Option')) }} 
} 

而不是使用 '回答[]' 爲輸入名稱。

0

使用foreach或驗證之前for環......

$data = Input::get('answer'); 

$rules = []; 

foreach(Input::get('answer') as $k => $val){ 
    $rules[$k] = 'required'; 
} 

$v = Validator::make($data, $rules);