Advertisement
nadhir_rozam

Laravel (Praktik Web) : ProdukController::store()

May 4th, 2025
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.53 KB | None | 0 0
  1. // melakukan validasi data
  2.         $request->validate([
  3.             'nama' => 'required|max:45',
  4.             'jenis' => 'required|max:45',
  5.             'harga_jual' => 'required|numeric',
  6.             'harga_beli' => 'required|numeric',
  7.             'foto' => 'nullable|image|mimes:jpg,png,jpeg,gif,svg|max:2048',
  8.         ],
  9.         [
  10.             'nama.required' => 'Nama wajib diisi',
  11.             'nama.max' => 'Nama maksimal 45 karakter',
  12.             'jenis.required' => 'jenis wajib diisi',
  13.             'jenis.max' => 'jenis maksimal 45 karakter',
  14.             'foto.max' => 'Foto maksimal 2 MB',
  15.             'foto.mimes' => 'File ekstensi hanya bisa jpg,png,jpeg,gif, svg',
  16.             'foto.image' => 'File harus berbentuk image'
  17.         ]);
  18.  
  19.         //jika file foto ada yang terupload
  20.         if(!empty($request->foto)){
  21.             //maka proses berikut yang dijalankan
  22.             $fileName = 'foto-'.uniqid().'.'.$request->foto->extension();
  23.             //setelah tau fotonya sudah masuk maka tempatkan ke public
  24.             $request->foto->move(public_path('image'), $fileName);
  25.         } else {
  26.             $fileName = 'nophoto.jpg';
  27.         }
  28.  
  29.         //tambah data produk
  30.         DB::table('produks')->insert([
  31.             'nama'=>$request->nama,
  32.             'jenis'=>$request->jenis,
  33.             'harga_jual'=>$request->harga_jual,
  34.             'harga_beli'=>$request->harga_beli,
  35.             'deskripsi' => $request->deskripsi,
  36.             'foto'=>$fileName,
  37.         ]);
  38.  
  39.         return redirect()->route('produk.index');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement