2013-10-07 13 views
11

Bir Laravel 4 formunda oluşturduğum bir dizi onay kutularının değerlerini almak istiyorum. İşte onay kutularını kurma görünümünde kod şudur:Laravel 4 denetleyicisinde bir dizi onay kutusu için değerler nasıl alınır (işaretliyse)

@foreach ($friends as $friend) 
<input tabindex="1" type="checkbox" name="friend[]" id="{{$friend}}" value="{{$friend}}"> 
@endforeach 

benim denetleyicisi olarak, kontrol ettim kutuları için değerler elde ve onları bir diziye koymak istiyorum. Ben bunun nasıl tam olarak emin değilim, ama bir şey gibi olduğunu varsayalım:

array[]; 

foreach($friend as $x) 
if (isset(Input::get('friend')) { 
     array[] = Input::get('friend'); 

} 
endforeach 

bunu yapmak için bir çözüm ile beni verebilir misiniz? Teşekkür ederim.

DÜZENLEME: "eğer" döngü gerçekleşmiyorsa

public function describe_favorite() { 

      $fan = Fan::find(Auth::user()->id); 
      $fan->favorite_venue = Input::get('venue'); 
      $fan->favorite_experience = Input::get('experience'); 

      $friends_checked = Input::get('friend[]'); 

      print_r($friends_checked); 

      if(is_array($friends_checked)) 
      { 
      $fan->experience_friends = 5; 
      } 

      $fan->save(); 


      return Redirect::to('fans/home'); 

     } 

:

Bu benim denetleyicisi ne var olduğunu. $ Friends_checked değişkeninde ne olduğunu görmek için print_r çıktısını nasıl görebilirim?

cevap

27

Onay kutuları ilişkiliyse, name özniteliğinde [] kullanmalısınız. adı kullanarak

@foreach ($friends as $friend) 
<input tabindex="1" type="checkbox" name="friend[]" id="{{$friend}}" value="{{$friend}}"> 
@endforeach 


$friends_checked = Input::get('friend'); 
if(is_array($friends_checked)) 
{ 
    // do stuff with checked friends 
} 
+0

Gerçekten neleri içerdiğini print_r ($ friends_checked) görmeye çalışın. –

+0

Bu değişkeni Denetleyici'den nasıl yazdırırım? – user1072337

+1

sadece bunu kontrol cihazınızda yazınız: print_r ($ friends_checked); –

0

= "arkadaş []" form alanında sunucuya bir dize değeri geçerse adı = "dost" karşıt olarak, sunucuya geçirilir bir dizi adlı arkadaşı oluşturur.

1

Dizi arkadaşının bir anahtarı olmalıdır. Eğer $ friend-> kimliği varsa, bunun gibi bir şey deneyebilirsiniz.

@foreach ($friends as $friend) 
    <input tabindex="1" type="checkbox" name="friend[{{$friend->id}}]" id="{{$friend}}"> 
@endforeach 
+0

Denetleyicide bir for döngüsü kullanılıyorsa bu kabul edilen cevap olmalı! – viery365

İlgili konular