una subir ruta redimensionar manejo imagenes imagen guardar documento con como almacenar actualizar php laravel-5.4

php - ruta - subir documento laravel



laravel 5.4 subir imagen (9)

En Laravel 5.4, puedes usar guessClientExtension

Mi código de controlador para cargar el archivo en laravel 5.4:

if ($request->hasFile(''input_img'')) { if($request->file(''input_img'')->isValid()) { try { $file = $request->file(''input_img''); $name = rand(11111, 99999) . ''.'' . $file->getClientOriginalExtension(); $request->file(''input_img'')->move("fotoupload", $name); } catch (Illuminate/Filesystem/FileNotFoundException $e) { } } }

La imagen se cargó correctamente, pero el código arrojó una excepción:

FileNotFoundException en la línea 123 de MimeTypeGuesser.php

El archivo tiene un error en mi código o es un error en la versión 5.4. ¿Puede alguien ayudarme a resolver el problema?

Mi código de vista:

<form enctype="multipart/form-data" method="post" action="{{url(''admin/post/insert'')}}"> {{ csrf_field() }} <div class="form-group"> <label for="imageInput">File input</label> <input data-preview="#preview" name="input_img" type="file" id="imageInput"> <img class="col-sm-6" id="preview" src=""> <p class="help-block">Example block-level help text here.</p> </div> <div class="form-group"> <label for="">submit</label> <input class="form-control" type="submit"> </div> </form>


Prueba este código. Esto resolverá tu problema.

public function fileUpload(Request $request) { $this->validate($request, [ ''input_img'' => ''required|image|mimes:jpeg,png,jpg,gif,svg|max:2048'', ]); if ($request->hasFile(''input_img'')) { $image = $request->file(''input_img''); $name = time().''.''.$image->getClientOriginalExtension(); $destinationPath = public_path(''/images''); $image->move($destinationPath, $name); $this->save(); return back()->with(''success'',''Image Upload successfully''); } }


Puedes usarlo de manera fácil, a través del método de store en tu controlador

como el de abajo

Primero, debemos crear un formulario con entrada de archivo para permitirnos cargar nuestro archivo.

{{Form::open([''route'' => ''user.store'', ''files'' => true])}} {{Form::label(''user_photo'', ''User Photo'',[''class'' => ''control-label''])}} {{Form::file(''user_photo'')}} {{Form::submit(''Save'', [''class'' => ''btn btn-success''])}} {{Form::close()}}

Aquí es cómo podemos manejar el archivo en nuestro controlador.

<?php namespace App/Http/Controllers; use Illuminate/Http/Request; use App/Http/Controllers/Controller; class UserController extends Controller { public function store(Request $request) { // get current time and append the upload file extension to it, // then put that name to $photoName variable. $photoName = time().''.''.$request->user_photo->getClientOriginalExtension(); /* talk the select file and move it public directory and make avatars folder if doesn''t exsit then give it that unique name. */ $request->user_photo->move(public_path(''avatars''), $photoName); } }

Eso es. Ahora puede guardar $photoName en la base de datos como un valor de campo user_photo . Puede usar la función de asset(''avatars'') en su vista y acceder a las fotos.


Una buena lógica para su aplicación podría ser algo como:

public function uploadGalery(Request $request){ $this->validate($request, [ ''file'' => ''required|image|mimes:jpeg,png,jpg,bmp,gif,svg|max:2048'', ]); if ($request->hasFile(''file'')) { $image = $request->file(''file''); $name = time().''.''.$image->getClientOriginalExtension(); $destinationPath = public_path(''/storage/galeryImages/''); $image->move($destinationPath, $name); $this->save(); return back()->with(''success'',''Image Upload successfully''); } }


Usa el siguiente código:

$imageName = time().''.''.$request->input_img->getClientOriginalExtension(); $request->input_img->move(public_path(''fotoupload''), $imageName);


creo que es mejor hacer esto

if ( $request->hasFile(''file'')){ if ($request->file(''file'')->isValid()){ $file = $request->file(''file''); $name = $file->getClientOriginalName(); $file->move(''images'' , $name); $inputs = $request->all(); $inputs[''path''] = $name; } } Post::create($inputs);

en realidad, las imágenes son carpetas que laravel las hace automáticas y el archivo es el nombre de la entrada y aquí almacenamos el nombre de la imagen en nuestra columna de ruta en la tabla y almacenamos la imagen en el directorio público / images


// get image from upload-image page public function postUplodeImage(Request $request) { $this->validate($request, [ // check validtion for image or file ''uplode_image_file'' => ''required|image|mimes:jpg,png,jpeg,gif,svg|max:2048'', ]); // rename image name or file name $getimageName = time().''.''.$request->uplode_image_file->getClientOriginalExtension(); $request->uplode_image_file->move(public_path(''images''), $getimageName); return back() ->with(''success'',''images Has been You uploaded successfully.'') ->with(''image'',$getimageName); }



public function store() { $this->validate(request(), [ ''title'' => ''required'', ''slug'' => ''required'', ''file'' => ''required|image|mimes:jpg,jpeg,png,gif'' ]); $fileName = null; if (request()->hasFile(''file'')) { $file = request()->file(''file''); $fileName = md5($file->getClientOriginalName() . time()) . "." . $file->getClientOriginalExtension(); $file->move(''./uploads/categories/'', $fileName); } Category::create([ ''title'' => request()->get(''title''), ''slug'' => str_slug(request()->get(''slug'')), ''description'' => request()->get(''description''), ''category_img'' => $fileName, ''category_status'' => ''DEACTIVE'' ]); return redirect()->to(''/admin/category''); }