2017-10-21 4 views
1

Ich versuche, diesen Code in Controller:Bild hochladen in Laravel

public function uploadimage(Request $request) 
    { 
     if ($request->hasFile('image')) { 
      $destinationPath = 'uploads'; 
      $files = $request->image; 
      $file_name = $files->getClientOriginalName(); 
      $files->move($destinationPath, $file_name); 
      echo "Complete"; 
     } else { 
      echo "No File"; 
     } 
    } 

Meine Html-Eingabedatei:

<input name="image" type="file" id="image"/> 

aber ich kann nicht hochgeladen werden. Irgendeine Idee?

+1

Haben Sie 'enctype = "multipart/form-data"' in Ihrem Formular-Tag haben? Wie das '

' – ljubadr

+0

Hoppla, ich danke Ihnen sehr, es ist Arbeit, wenn ich diese setzen –

+0

Froh, dass ich helfen konnte. Überlegen Sie, die Antwort unten zu akzeptieren, da sie die gleichen Informationen plus die zusätzliche Möglichkeit zum Speichern der Datei enthält – ljubadr

Antwort

2

können Sie storage::putFile('folder_name', $request->image) verwenden dies wird automatisch generierten Dateinamen zurückgeben und Sie können das in Ihrer Datenbank speichern.

Und stellen Sie sicher, dass Ihr Standard-Dateisystem für öffentliche und Ihre Form gesetzt haben haben diese enctype="multipart/form-data"

Referenz https://laravel.com/docs/5.5/filesystem#storing-files

+2

Ich bin spät dran. Ich forschte danach. –

+0

Wenn du der Erste bist, der antwortet, bist du jetzt spät dran, übrigens ist die Lösung 'enctype =" multipart/form-data "' er vergisst, in Form zu addieren – C2486

+0

Du hast Recht, ich trage zum ersten Mal bei Also wollte ich es einfach wegschreiben. Das war die einzige Frage, die ich in meinem Feed beantworten konnte. –