Check the documentation
How get the file from a folder
Dear Sirs,
I wanna list my files in a page it has to come from a folder in that i need to display the files like some txt,mp3 how to do that can u help me out
Dear Sir Tomi,
Sorry sir i am new to this laravel i don't know where to create this
use Illuminate\Support\Facades\Storage;
$files = Storage::allFiles($directory);
i have only the view file like bible songs.blade.php
how to do it sir can u help me sir
Dear you new then first read this Link.
https://laravel.com/docs/5.3/filesystem#directories
let me know if there any error occurs.
Dear Sirs,
Do i need to create a new controller to use this sir
use Illuminate\Support\Facades\Storage;
$files = Storage::files($directory);
“Dear Sirs”
@imraj123 Women can be web developers, too.
Sorry Sirs and Mams i have made a mistake
Dear Sirs&Mams
i had tried my best in this file list from a directory but i got error can any one help me out
my controller public function getUploadPdf() { return View::make('pages.bible-listen')->with('files', File::allFiles('uploads')); }
My view :
@foreach($files as $file) {{ $file }}
is this correct i don't know
Can you post your error text...
This is my error text sir
Whoops, looks like something went wrong.
2/2 ErrorException in c9432a1eca855b51b39afe20d1f68fbcb42fb678.php line 13: Undefined variable: files (View: /var/www/svnprojects/TNB-CBC/Source/1.0.0/resources/views/pages/bible-listen.blade.php) in c9432a1eca855b51b39afe20d1f68fbcb42fb678.php line 13 at CompilerEngine->handleViewException(object(ErrorException), '1') in PhpEngine.php line 44 at PhpEngine->evaluatePath('/var/www/svnprojects/TNB-CBC/Source/1.0.0/storage/framework/views/c9432a1eca855b51b39afe20d1f68fbcb42fb678.php', array('__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag))) in CompilerEngine.php line 59 at CompilerEngine->get('/var/www/svnprojects/TNB-CBC/Source/1.0.0/resources/views/pages/bible-listen.blade.php', array('__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag))) in View.php line 149 at View->getContents() in View.php line 120 at View->renderContents() in View.php line 85 at View->render() in Response.php line 45 at Response->setContent(object(View)) in Response.php line 201 at Response->__construct(object(View)) in Router.php line 1017 at Router->prepareResponse(object(Request), object(View)) in Router.php line 642 at Router->Illuminate\Routing{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing{closure}(object(Request)) in SubstituteBindings.php line 41 at SubstituteBindings->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in VerifyCsrfToken.php line 65 at VerifyCsrfToken->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in ShareErrorsFromSession.php line 49 at ShareErrorsFromSession->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in StartSession.php line 64 at StartSession->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37 at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in EncryptCookies.php line 59 at EncryptCookies->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in Pipeline.php line 104 at Pipeline->then(object(Closure)) in Router.php line 644 at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 618 at Router->dispatchToRoute(object(Request)) in Router.php line 596 at Router->dispatch(object(Request)) in Kernel.php line 267 at Kernel->Illuminate\Foundation\Http{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing{closure}(object(Request)) in CheckForMaintenanceMode.php line 46 at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in Pipeline.php line 104 at Pipeline->then(object(Closure)) in Kernel.php line 149 at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 116 at Kernel->handle(object(Request)) in index.php line 53 at require_once('/var/www/svnprojects/TNB-CBC/Source/1.0.0/public/index.php') in server.php line 21 1/2 ErrorException in c9432a1eca855b51b39afe20d1f68fbcb42fb678.php line 13: Undefined variable: files in c9432a1eca855b51b39afe20d1f68fbcb42fb678.php line 13 at HandleExceptions->handleError('8', 'Undefined variable: files', '/var/www/svnprojects/TNB-CBC/Source/1.0.0/storage/framework/views/c9432a1eca855b51b39afe20d1f68fbcb42fb678.php', '13', array('__path' => '/var/www/svnprojects/TNB-CBC/Source/1.0.0/storage/framework/views/c9432a1eca855b51b39afe20d1f68fbcb42fb678.php', '__data' => array('__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag)), 'obLevel' => '1', '__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag))) in c9432a1eca855b51b39afe20d1f68fbcb42fb678.php line 13 at include('/var/www/svnprojects/TNB-CBC/Source/1.0.0/storage/framework/views/c9432a1eca855b51b39afe20d1f68fbcb42fb678.php') in PhpEngine.php line 42 at PhpEngine->evaluatePath('/var/www/svnprojects/TNB-CBC/Source/1.0.0/storage/framework/views/c9432a1eca855b51b39afe20d1f68fbcb42fb678.php', array('__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag))) in CompilerEngine.php line 59 at CompilerEngine->get('/var/www/svnprojects/TNB-CBC/Source/1.0.0/resources/views/pages/bible-listen.blade.php', array('__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag))) in View.php line 149 at View->getContents() in View.php line 120 at View->renderContents() in View.php line 85 at View->render() in Response.php line 45 at Response->setContent(object(View)) in Response.php line 201 at Response->__construct(object(View)) in Router.php line 1017 at Router->prepareResponse(object(Request), object(View)) in Router.php line 642 at Router->Illuminate\Routing{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing{closure}(object(Request)) in SubstituteBindings.php line 41 at SubstituteBindings->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in VerifyCsrfToken.php line 65 at VerifyCsrfToken->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in ShareErrorsFromSession.php line 49 at ShareErrorsFromSession->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in StartSession.php line 64 at StartSession->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37 at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in EncryptCookies.php line 59 at EncryptCookies->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in Pipeline.php line 104 at Pipeline->then(object(Closure)) in Router.php line 644 at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 618 at Router->dispatchToRoute(object(Request)) in Router.php line 596 at Router->dispatch(object(Request)) in Kernel.php line 267 at Kernel->Illuminate\Foundation\Http{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing{closure}(object(Request)) in CheckForMaintenanceMode.php line 46 at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 137 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) in Pipeline.php line 33 at Pipeline->Illuminate\Routing{closure}(object(Request)) in Pipeline.php line 104 at Pipeline->then(object(Closure)) in Kernel.php line 149 at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 116 at Kernel->handle(object(Request)) in index.php line 53 at require_once('/var/www/svnprojects/TNB-CBC/Source/1.0.0/public/index.php') in server.php line 21
Try to see if you get any files ...
public function getUploadPdf() {
dd(File::allFiles('uploads'));
return View::make('pages.bible-listen')->with('files', File::allFiles('uploads'));
}
@tomopongrac hello is there is any way to get one file not all files
@ahmed_bondok2006 Of course.
$file = File::get('the-file-you-want');
https://laravel.com/api/10.x/Illuminate/Support/Facades/File.html#method_get
No sir again i am getting the same error
This is my view file is it correct
@foreach($files as $file) {{ $file }}
Dear Sirs & Mams
For me $directories = Storage::directories($directory); this method is not working it returns empty array can u help me
This is my Controller function public function index($directory) { // $files = File::AllFiles('bible-audio-cd'); $files = Storage::directories($directory);
return view('file.bible-listen', ['audios' => audios])->withPageTitle(trans('BibleListen'));
// return View::make( 'file.bible-listen' )->with( 'audios', $files );
}
Hallo @imraj123, please do this:
Passing variables to blade
function public function index() {
$yourDirectory = '/files';
$data['files'] = Storage::allFiles($yourDirectory);
//Storing the values to $data['files'] is exactly the same, as replacing $data in the following lines with ['files' => Storage::directories($directory)]
return view('file.bible-listen', $data);
}
PS: There is no function with the name withPageTitle($string). If you want to define a page title, please refer to this: https://laravel.com/docs/5.3/blade#template-inheritance
Please make sure, that the array index 'files' ($data['files']) of $datamatches the variable $files in the blade file. (See later)
Passing Parameters
Also be aware, that if you want to pass parameters, like a $directory variable, you need to pass it via $_GET or $_POST Variable, which you access like this:
function public function index(Request $request) {
$yourDirectory = $request->input('directory');
$data['files'] = Storage::allFiles($yourDirectory);
//Storing the values to $data['files'] is exactly the same, as replacing $data in the following lines with ['files' => Storage::directories($directory)]
return view('file.bible-listen', $data);
}
make sure to insert use Illuminate\Http\Request; at the beginning of the file.
Now you can access all files in a given directory, by calling the url with a get parameter. For example http://localhost/myproject/files/?directory='/files'
View
Your View file/bible-liste.blade.php will then be something like this
@foreach($files as $file)
{{ $file }}
@endforeach
Security
Please be aware about Path Traversal, when accepting a directory or even a file as an input. Reference: https://www.owasp.org/index.php/Path_Traversal
Dear Sirs and Mams,
How to open the directory from the view page like i have retrieved the files from a storage directory it is listed in my view page but i need to click and open the file it is folder in that i have some file. how to do that.
This is controller:
public function index() { //$files = File::AllFiles('bible-audio-cd'); $directory = '/bible-audio-cd'; $files['files'] = Storage::allDirectories($directory); // $directories = Storage::allDirectories($directory);
return view('file.bible-listen',$files);
}
This is my view
@foreach($files as $file)
- {{ $file }}
My output is :
bible-audio-cd/00 Blessing bible-audio-cd/01 Genesis bible-audio-cd/02 Exodus bible-audio-cd/03 Leviticus bible-audio-cd/04 Numbers bible-audio-cd/05 Deuteronomy bible-audio-cd/06 Joshua
You can try this example. http://stackoverflow.com/questions/28964412/how-to-get-file-path-using-storage-facade-in-laravel-5
how to remove the storage->public folder name
For Ex:
public/bible-audio-cd/Blessing
i wanna remove the public/bible-audio-cd/ how to do that
Dear Sirs and Mams
How to set the storage->app variable to constant variable and how to download the file from the storage-> app
This is my constant:
return[ 'bible-listen' => [ 'songs' => '/app/bible-audio-cd/Blessing', ]
]
my view:
Please or to participate in this conversation.