fichier tmp lors de l'upload

Par Bfabian, il y a 7 ans


Bonjour,

Lors d'un upload d'image, il enregistre dans ma db le nom de l'image 2 fois
1 avec le bon nom, l'autre en fichier tmp

voici mon code

$this->validate($request, [ 'nom' =>'', 'sousmenu_id'=>'', 'photo' => '', ]); $evenement = new Evenement($request->input()) ; if($file = $request->hasFile('photo')) { $file = $request->file('photo') ; $destinationPath = public_path('/media/'); $fileName = time().'.'.$file->getClientOriginalExtension(); $file->move($destinationPath,$fileName); $evenement->photo = $fileName ; } $evenement->save(); <form action="{{ isset($evenement->id) ? route('updateEvenement',['id'=>$evenement->id]) : route('validEvenement') }}" method="post" enctype="multipart/form-data"> <fieldset> <legend></legend> <div class="row"> <div class="col"> <label for="nom">Nom de l'évenement</label> <input type="text" id="nom" class="form-control validate" placeholder="Nom" name="nom" value="{{$evenement->nom or ''}}"> </div> </div> <div class="form-group"> <label for="description">Description</label> <textarea class="form-control validate" id="description" rows="3" name="description" value="{{$evenement->description or ''}}">{{$evenement->description or ''}}</textarea> </div> <div class="col-auto my-1"> <label class="mr-sm-2" for="inlineFormCustomSelect">Catégorie</label> <select class="custom-select mr-sm-2" id="inlineFormCustomSelect" name="sousmenu_id"> <option selected>Choisir...</option> @foreach($sousmenu as $sousmenu) <!-- <option selected>Choose...</option>--> <option value="{{$sousmenu->id or '' }}">{{$sousmenu->nom or ''}}</option> @endforeach </select> </div> <div class="form-group"> form_upload <label for="photo">Ajouter une image</label> <input type="file" name="photo" class="form-control-file" id="photo" value="{{$evenement->photo or ''}}"> </div> <input type="hidden" name="id" value=""/> <input type='hidden' name='_token' value='{{ csrf_token() }}'/> <div class=""> <button type="submit" class="btn btn-primary mb-2" name="action">Submit</button> </div> </fieldset> </form>

comment ne plus avoir se fichier .tmp

Merci d'avance

Aucune réponse