2016-11-21 3 views
0

i Mehr Bilder von html Feld hochladen möchten, ist hier View-Code:Upload HTML-Eingabedatei in yii2

<input type="file" name="file[]" multiple id="file"/> 

und mein Problem ist in der Steuerung, da jeder yii2 Entwickler diese Codes für Upload-Datei auf einfache Art und Weise weiß :

 $model->logoFile = UploadedFile::getInstance($model, 'logoFile'); 
     $model->logoFile->saveAs('uploads/' . $model->logoFile->name); 
     $model->logoImage = $model->logoFile->name; 

aber die Bilder in meinem Fall kam nicht von yii Felder liks dieses:

<?= $form->field($model, 'image')->fileInput() ?> 

so eine idee wie kann ich meine steuerung reparieren zu erhalten multi bilder und speichern wenn im server auch

Hinweis: meine tamplate ist fortgeschritten.

Antwort

1

Hinweis: innerhalb Ihrer Ansicht Sie einfache HTML-Datei-Upload verwenden, mit dem Namen file

Ich schlage vor, wird es wie diese

in yii2 Art und Weise zu ändern
<?= $form->field($model, 'logoFile[]')->fileInput(['multiple' => true, 'class' => 'btn btn-default '])->label("Attachment"); ?> 

auch variabler kümmern verwendet Innenansicht und Modell

Modell

//public $logoFile; 
public function rules() { 
     return [ 
      [['logoFile'], 'file', 'maxFiles' => 4], 
] 

}

-Controller

+0

immer noch ich ein Problem mit Speichern von Bildern konfrontiert, habe ich nicht im Ordner –

+0

Ihre Frage mit neuem Code (Ihre Ansicht, Modell und Controller-Code) zu aktualisieren, so können wir überprüfen und überprüfen Sie auch für die Ordner Berechtigungen. –

+0

ja ich weiß, ich ersetze es, wie Sie erwähnen –

0
$files = \yii\web\UploadedFile::getInstancesByName('file'); 

gibt das Array der Dateien zurück, die mit dem Eingabefeld "Datei" gesendet wurden.

+0

ich nicht irgend etwas in Ordner entweder in db finden konnten. –