2016-01-12 306 views
0

海蘭大家好,我有過這樣的兩個字段,後來我需要重複這些領域,所以我這樣做,用JavaScript這樣數據存儲到數據庫

     <div class="col-md-9"> 
         <div class="form-group"> 
          {{Form::label('_customer_name', 'Customer Name :', ['class' => 'contc p-4 icn']) }} 
          {{Form::email('_customer_name', null, ['class' => 'form-control chos_bsns', 'id' => '_customer_name', 'placeholder' => 'eMail here ']) }} 
         </div> 
        </div> 
         <div class="col-md-12"> 
          <div class="form-group"> 

          {{sprintf(Form::label('_feedback', '%s',['class' => 'compny_over icn']),'Feedback recieved from customer &nbsp;&nbsp;<small>(Maximum 100 words)</small> 
          <span> Word Count : 6 </span>') }} 
          {{Form::textarea('_Feedback', null, ['class' => 'form-control', 'id' => '_feedback', 'placeholder' => 'Information regarding service' , 'rows' => '5']) }} 
          </div> 
         </div> 

,我正在提交像這樣在數據庫中的值更早

[ 
    'name'=>Input::get('_customer_name'), 
    'feedback'=>Input::get('_Feedback'), 
    'website_id'=>Input::get('website_id')    
]; 
Testimonial::create($data); 

但因爲我重複了一遍我不知道那些存儲在數據庫中的任何想法將是多大的幫助。

+0

你是說,你有2種形式,存儲同樣的事情? – Rai

回答

0

你應該添加一個[]到動態的所有字段(所以用Javascript創建)所以你會發送一個數組值到Laravel。例如:

name="customer_name[]" 

然後你可以檢查與價值觀:

$c = count($request->customer_name[]); 
for($i=0;$i<$c;$i++){ 
    // add new customer 
} 
+0

我這樣做,我現在得到一個數組,如果我傾倒它像這樣。 '$ emails = Request :: get('_ customer_name');' 'dd($ emails);' – zaki

+0

那麼現在的問題是什麼?你可以遍歷數組並存儲所有值 – derdida

+0

我確實得到了這樣一個數組: 'array(2){[0] => string(14)「[email protected]」[1] => string(15) 「[email protected]」} array(2){[0] => string(12)「1st feedback」[1] => string(12)「2nd feedback」}' 其中[email protected]給出「第一反饋」的反饋值,同樣[email protected]提交第二反饋值。 – zaki

0

這個工程如果我們有領域的不一樣。 :)

for($ii = 0; $ii < count($emails) ; $ii++) { 
$email = $emails[$ii]; 
$feedback = $feedbacks[$ii]; 
Testimonial::create([ 
    'name' => $email, 
    'feedback'=>$feedback, 
    'website_id'=>Input::get('website_id') 
]);}