Bonjour,
J'ai fais un petit système d'upload de fichiers. Il fonctionne et j'arrive à lister les fichiers uploadés.
Mais je ne sais pas comment obtenir l'url des fichiers (pour les télécharger), ou la taille, le nom...
La fonction d'upload :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public function uploadFilePost(Request $request){ $request->validate([ 'fileToUpload' => 'required|file|max:50|mimes:jpeg,pdf,txt,odt,png', ]); $fileName = "fileName".time().'.'.request()->fileToUpload->getClientOriginalExtension(); $request->fileToUpload->storeAs('uploads',$fileName); return back() ->with('success','Fichier envoyé.'); }
La fonction qui affiche la page et où j'essaye d'afficher les infos :
Ces 2 fonctions sont dans le même controller.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 public function uploadFile(Request $request){ $url = Storage::url('fileToUpload'); $path = Storage::disk('public')->path('files'); $files_with_size = array(); $files = Storage::files('uploads'); foreach ($files as $key => $file) { $files_with_size[$key]['name'] = $file; } return view('uploadfile', [ 'files' => $files, 'url' => $url, 'path' => $path ]); }
Et la route dans web.php :
Je ne comprends pas trop comment obtenir les infos sur les fichiers, stockés en local sur le serveur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 /* file upload */ Route::get('uploadfile', 'Controller@uploadfile')->name('uploadfile'); Route::post('uploadfile','Controller@uploadFilePost')->name('post.uploadfile');
Quelqu'un pour m'aider à comprendre svp ?
Merci d'avance ;-)
ANDRE Ani
Partager