2017-01-30 6 views
2

私はtextareaからそれぞれの行を取得し、データベースの新しい行に挿入しようとしています。私は新しいbrakelinesとテキストのリストを作成するときに、f.ex:
test1の
test2の
test3に

は私は、MySQLのf.exで新しい行にこれらのマルチラインのそれぞれを挿入する:
のid kwName
3. TEST3
Laravelはtextareaの各行を取得し、データベースの新しい行に挿入します

test2は
1. test1の
2、私を助けてください。

私のコードは次のとおりです。

ブレイド

<textarea rows="1" name="kwName" class="form-control" placeholder="Insert keywords list"></textarea> 
<input type="submit" class="btn btn-primary" name="add_kw" value="save"> 

コントローラ

if ($request->has('add_kw')) { 

       $this->validate($request,[ 
        'kwName'=> 'required', 
       ]); 

       // create new data    

       $values = new keyword; 

       $values->kwName = $request->kwName; 
       $values->website_id = $id; 
       $values->save(); 
} 
+0

挿入中にforeachループを使用する – Sona

+0

「\ n」のテキスト領域を分割することができます。 – aynber

答えて

3

私は、これは

<?php 
    $text = trim($_POST['textareaname']); 
    $textAr = explode("\n", $text); // remove the last \n or whitespace character 
    $textAr = array_filter($textAr, 'trim'); // remove any extra \r characters left behind 

    foreach ($textAr as $line) { 
     // processing here. 
    } 
?> 
::お手伝いをすると思います

これは単なる例です。

+0

それは私を大いに助けましたが、今私は書くときにレコードf.exを複製しています:test1 test2、テーブルに表示test1 test2次の行test2を再度テストします。私はなぜかわからない –

+0

完全な例を挙げてください –

+1

$ text = $ _POST ['kwName']; $ textAr = explode( "\ n"、str_replace( "\ r"、 ""、$ text)); $ textAr = array_filter($ textAr、 'trim'); foreach($ textAr $ line){ //新しいデータを作成 $ line = newキーワード; $ line-> kwName = $ request-> kwName; $ line-> website_id = $ id; $ line-> save(); } –

関連する問題