2017-09-11 24 views
0

私は、データベース内の1つのフィールドに複数のチェックボックスを保存する必要があります。保存複数のチェックボックス - Laravel 5.4

  <div class="checkbox"> 
       <label> 
        <input type="checkbox" name="expresion_vegetal_id[]" value="1">Raíz 
       </label> 
      </div> 

      <div class="checkbox"> 
       <label> 
        <input type="checkbox" name="expresion_vegetal_id[]" value="3">tronco 
       </label> 
      </div> 
      <div class="checkbox"> 
       <label> 
        <input type="checkbox" name="expresion_vegetal_id[]" value="4">corteza 
       </label> 
      </div> 

コントローラ:これは[ ""]で、値を保存しようとしている

$ficha_tecnica = new Ficha_Tecnica(); 
$options = $request->get('expresion_vegetal_id'); 
$ficha_tecnica->expresion_vegetal_id = $options; 
$ficha_tecnica->save(); 

、私は必要なだけ保存番号

insert into `fichas_tecnicas` (`expresion_vegetal_id`) values (["1","3","4"]) 

私が保存しよう

、次のメッセージを表示

1366 Incorrect integer value: '["1","4"]' for column 'expresion_vegetal_id' 
+0

私は 'Ficha_Tecnica'もデータベースに慣れていないんだけど、あなたがいるように見えるエラーメッセージを読んで、この

$ficha_tecnica = new Ficha_Tecnica(); foreach ($$request->expresion_vegetal_id as $expresion_vegetal_id) { $ficha_tecnica->fresh(); $ficha_tecnica->expresion_vegetal_id = $expresion_vegetal_id; $ficha_tecnica->save(); } 

のように見えます型エラーがあります。 したがって、データベースフィールドを配列型に変更するか、配列を整数に変更します。 – Dominik

答えて

0

You'r can not a dd that expresion_vegetal_idを配列形式でループすることができます。 あなたの質問には、それを文字列形式で追加する必要があることがわかります。 あなたが最初のループその配列を必要と一つずつを保存したり、あなたは私があなたにループを使用してサンプルを与える

を作成し使用することができます。 あなたのコードの意志が、私はあなたが他の同じ方法を見つけることを願って....

関連する問題