2017-11-26 24 views
0

DBに動的フィールドを挿入したいと思います。私は次のコードを使用していますが、期待通りに動作しません。Laravel動的入力フィールドを追加

<html> 
<input id="reporting" type="text" value="salman" name="reporting[]">  
<input id="reporting" type="text" value="ankur" name="reporting[]">  
</html> 

<?php 

$report = Input::get('reporting'); 

for($i=0; $i<=count($report);$i++) 
     { 
      $news = new Reporting(); 
      $news->user_id = 1; 
      $news->reporting = $report; 
      $news->save(); 
     } 
?> 

期待される結果:

user_id || reporting 
1   Salman 
1   Ankur 

は、あなたたちはこの問題を解決するために私を助けてください。レポートの値にあなたが望むように保存しているときには、コレクションをマッピングして、新しいレポートを作成することができ

$report = Input::get('reporting'); 

for($i=0; $i<=count($report);$i++) 
{ 
    $news = new Reporting(); 
    $news->user_id = 1; 
    $news->reporting = $report[$i]; // here add [$i] 
    $news->save(); 
} 
+0

'dd($ report)'とは何ですか? –

+1

'$ news-> reporting = $ report [$ i];' –

+0

'salman' –

答えて

0

が配列である、それの現在の項目は[]表記で受信することができ

バックエンドで
<html> 
<body> 
@if(session('success')) 
<div class="alert alert-success"> 
    {{ session('success') }} 
</div> 
@endif 
<form action="/" method="post"> 
    {{csrf_field()}} 
    <input id="reporting" type="text" value="salman" name="reporting[]">  
    <input id="reporting" type="text" value="ankur" name="reporting[]"> 
    <button type ="submit"> Send </button> 
</form> 
</body> 
</html> 

漁獲データ:

public function store() 
{ 
    $fields = collect(Input::get('reporting')); 

    $fields->map(function($value, $key){ 

     return Reporting::create([ 

      'user_id'=>1, 

      'reporting'=>$value, 
     ]); 

    }); 

    return redirect('/')->with('success', 'Action was successful'); 
} 

これにより、次の形式のデータが生成されます。

user_id || reporting 
1   Salman 
1   Ankur 

注:正しく動作することをテスト済みです。

+0

ya私はこの$ news-> reporting = $ report [$ i]を試しました。 //ここに[$ i]を追加すると$ 2とdbに2行が挿入されますが、id 25を使用して両方の行のidを分割します。id#2と2行目id#5を表示します –

+0

'var_dump ) 'は__what__を示していますか? –

+0

これは1つの名前 'salman'しか表示されません –

0

$reportとして

+0

エラー:未定義オフセット:2 –

+0

dd($ fields);結果を表示してください –

+0

コレクション{#217▼ #items:array:1 [▼ 0 => "複数" ] } –

関連する問題