2016-07-10 11 views
-1

I Mehrfachauswahl Werte in der Datenbank als StringPopulate Multi mit ausgewählten Werten in Laravel wählen 5.2

enter image description here

gespeichert haben

nun beim Versuch, die Werte in der Notwendigkeit zu bearbeiten als Array markiert Zeichenfolge zu holen und senden Sie es an bearbeite Ansicht, damit ich multi select mit diesen ausgewählten Werten füllen kann.

im Hinblick Mein Code für Multi wählen

<div class="form-group"> 
          <label class="control-label col-md-3">News For 
           <span class="required" aria-required="true"> * </span> 
          </label> 
          <div class="col-md-4"> 
            {!! Form::select('news_todisplay[]',['users'=>'Users','staff'=>'Staff','cinemahall'=>'Cinemahall'],$todisplayarray,array('class'=>'form-control','multiple'=>'multiple')) !!} 


           </select> 
          </div> 
         </div> 

Wo $ todisplayarray das Array aus der Datenbank geholt wird, das heißt, sie Benutzer sind, Mitarbeiter, cinemahall

Mein Controller-Code

public function edit($id) 
{ 

    $newsdetails=General_news::findOrFail($id); 
    $todisplayarray=explode(',',$newsdetails->news_todisplay); 
    return view('admin.editnews',compact('newsdetails','todisplayarray')); 
} 

Seite view-source zeigt dies

<select class="form-control" multiple="multiple" name="news_todisplay[]"><option value="users">Users</option><option value="staff">Staff</option><option value="cinemahall" selected="selected">Cinemahall</option></select> 

Dieser zeigt nur den letzten Wert als ausgewählt an, wo er 3 der ausgewählten Werte anzeigen soll.

Bitte lassen Sie mich wissen, wo ich falsch liege.

Antwort

0

Finden Sie die unten Antwort

<?php 
//get the old values from form 
$old = old('category'); 

//get data from database table field 
$cate= explode(',',$data->category_ids); 

//stay the values after form submission 
if($old){ $cate=$old; } 
?> 
<select id="categories" name="category[]" multiple> 
    @foreach ($categories as $val) 
     <option value="{{ $val->id }}" <?php echo in_array($val->id,$cate)?"selected" :"" ;?> >{{ ucfirst($val->category_name) }}</option> 
    @endforeach 
</select> 

Ich habe die Kategorien von Daten mit ids verwendet Schleife und die in der Tabelle

gespeicherten Daten übereinstimmen