public function store(MoviesRequest $request, $id = null) { // $movies->NOMCOLONNEDANSBDD =$request->NAMEINPUT if ($id == null) { $movies = new Movies(); } else { $movies = Movies::find($id); } $movies->type = $request->type; $movies->title = $request->title; $movies->synopsis = $request->synopsis; $movies->description = $request->description; $movies->budget = $request->budget; $movies->distributeur = $request->distributeur; $movies->duree = $request->duree; $movies->date_release = $request->date; $movies->visible = $request->visible; $movies->cover = $request->cover; $movies->categories_id = $request->categorie; $filename = ""; if ($request->hasFile('image')) { //je recupere mon fichier : $file = $request->file('image'); //je recupere le nom du fichier : $filename = $file->getClientOriginalName(); //je stock le chemin veers lequel mon image va etre envoyé $destinationPath = public_path() . '/uploads/movies'; //je deplace mon fichier uploader : $file->move($destinationPath, $filename); } $movies->image = asset("uploads/movies/" . $filename); $movies->save(); Session::flash('success', "Le film : {$movies->title} a bien été ajouté !"); return Redirect::route('movies_index'); //recupere le film de mon film ac la methode POST //input (name de mon champ) permet de recuperer la donéne titre de maniere safely }
/** * Store database */ public function store(MoviesRequest $request) { $dateoutput = \DateTime::createFromFormat('d/m/Y', $request->date_release); $movie = new Movies(); $movie->type = $request->type; $movie->title = $request->title; $movie->synopsis = $request->synopsis; $movie->description = $request->description; $movie->trailer = $request->trailer; $movie->date_release = $dateoutput; $movie->visible = $request->visible; $movie->cover = $request->cover; $movie->languages = $request->lang; $movie->categories_id = $request->categories_id; $movie->note_presse = $request->note_presse; $movie->distributeur = $request->distributeur; $filename = ""; if ($request->hasFile('image')) { $file = $request->file('image'); $filename = $file->getClientOriginalName(); // Récupère le nom original du fichier $destinationPath = public_path() . '/uploads/movies'; // Indique où stocker le fichier $file->move($destinationPath, $filename); // Déplace le fichier } $movie->image = asset("uploads/movies/" . $filename); $movie->save(); $actors = $request->actors; if (isset($actors)) { foreach ($actors as $actor) { DB::table('actors_movies')->insert([['movies_id' => $movie->id, 'actors_id' => $actor]]); } } $directors = $request->directors; if (isset($directors)) { foreach ($directors as $director) { DB::table('directors_movies')->insert([['movies_id' => $movie->id, 'directors_id' => $director]]); } } Session::flash('success', "Le film {$movie->title} a été enregistré"); return Redirect::route('movies_index'); }
public function post(MoviesRequest $request) { $movies = new moviesdb(); $movies->title = $request->title; $movies->type_film = $request->type_film; $movies->synopsis = $request->synopsis; $movies->description = $request->description; $movies->distributeur = $request->distributeur; $movies->bo = $request->bo; $movies->annee = $request->annee; $movies->duree = $request->duree; $movies->note_presse = $request->note_presse; $movies->trailer = $request->trailer; $movies->categories_id = $request->categories_id; $filename = ""; if ($request->hasFile('image')) { $file = $request->file('image'); $filename = $file->getClientOriginalName(); $destinationPath = public_path() . '/uploads/movies/'; $file->move($destinationPath, $filename); } $movies->image = asset('uploads/movies/' . $filename); $movies->save(); Session::flash('success', "Le film : {$movies->title} est injecté dans la BDD."); return Redirect::route('movies.index'); }
/** * action pour enregistrer en bdd les données du formulaire * la classe Request permet de receptionner les données en POST de manière sécurisée * sans gestion des contraintes de validation en amont * * Avec contraintes et utilisation d'une classe liée à FormRequest en amont: * MoviesRequest représente le formulaire * et la requête en POST du formulaire * * * on rentre dans la méthode seulement si il n'y a plus d'erreur dans le * formulaire */ public function store(MoviesRequest $request) { //récupérer le titre du film en POST //input(nom du champ) permet de récupérer la donnée en POST de façon sécurisée //$title = $request->input("title"); //$description = $request->input("description"); //exit() permet de sortir de l'exécution php //dump() permet le débuguage //exit(dump($title, $description)); $movie = new Movies(); foreach ($request->except('_token') as $key => $value) { $movie->{$key} = $value; } /** * traitement de l'upload de l'image */ $filename = ""; // si j'ai un fichier image if ($request->hasFile('image')) { //recuperation de l'image $file = $request->file('image'); //recuperation du nom du fichier $filename = $file->getClientOriginalName(); //stockage du chemin vers lequel l'image va etre envoyée $destinationPath = public_path() . '/uploads/movies'; //deplacement de l'image uploadée $file->move($destinationPath, $filename); } //mise à jour de la propriété de l'objet Movies $movie->image = asset('/uploads/movies/' . $filename); /** * les dates created_at et updated_at sont mises à jour automatiquement * par Laravel */ // //on renseigne la date de création si elle est vide // if(!$request->has('created_at')){ // $now = new \DateTime('NOW'); // $now = date_format($now, 'Y-m-d H:i:s'); // $movie->created_at = $now ; // } // // //mise à jour de la date d'édition, à chaque fois // $now = new \DateTime('NOW'); // $now = date_format($now, 'Y-m-d H:i:s'); // $movie->updated_at = $now ; //sauvegarde de l'objet Movies en base $movie->save(); //creer un messsage flash de type success Session::flash('success', "Le film {$movie->title} a bien été créé."); //redirection vers la liste des films return Redirect::route('movies_index'); }