Update Gambar pada Laravel 7 - Kenapa gambar tersimpannya dengan nama D:\xampp\tmp\php80.tmp

Tolong bantu jawab ini kenapa yaa??

awalnya

string(58) "foto_pengajar/eqoRQ7QttexMwf3IsdK0qNns9GdOkpmqt6SINOAL.jpg"

tapi setelah masuk ke database berubah menjadi  D:\xampp\tmp\php80.tmp

Script Controllernya

// metode untuk edit data
    public function edit($id_pengajar){
        $pengajar = DB::table('pengajar')->where('id_pengajar',$id_pengajar)->first();
        return view('pengajar-edit-data',['pengajar' => $pengajar]);
    }

    //metode untuk update data
    public function update(Request $request, $id_pengajar){
        //dd($request->all());
       $this->_validation($request);


        if ($request->file('foto_pengajar')) {
            $gambar = $request->file('foto_pengajar')->store('foto_pengajar' , 'public');
            $data = DB::table('pengajar')->where('id_pengajar',$id_pengajar)->first();
            //return $data->foto_pengajar;
            if ($data->foto_pengajar){
            Storage::delete('public/'. $data->foto_pengajar);
            $data->foto_pengajar = $gambar;
            } else{
            $data->foto_pengajar = $gambar;
           }
        }

        DB::table('pengajar')->where('id_pengajar',$id_pengajar)->update([
            'foto_pengajar' => $request->foto_pengajar,
            'nama_pengajar' => $request->nama_pengajar
        ]);
        return redirect()->route('pengajar')->with('message','Data berhasil diupdate');
    }

Script Formnya :

<form action="{{ route('pengajar.update',$pengajar->id_pengajar) }}" method="POST" enctype="multipart/form-data">
    @csrf
    @method('PATCH')
    <div class="form-group">
       <label @error('nama_pengajar')
          class="text-danger"
          @enderror>Nama Pengajar @error('nama_pengajar')
            | {{ $message }}
          @enderror</label>
        <input type="text" name="nama_pengajar"
          @if (old('nama_pengajar'))
            value="{{ old('nama_pengajar') }}"
          @else
            value="{{ $pengajar->nama_pengajar }}"
          @endif
          class="form-control">
    </div>
    <div class="row">
       <div class="col-12 col-md-6 col-lg-6">
          <div class="form-group">
             <img src="{{ asset('storage/'. $pengajar->foto_pengajar) }}" width="25%" alt="" class="img-thumbail">
             <hr>
             <label @error('foto_pengajar')
                class="text-danger"
                @enderror>Upload Foto @error('foto_pengajar')
                 | {{ $message }}
                @enderror</label>
             <input type="file" name="foto_pengajar" class="form-control">
          </div>
          <div class="card-footer text-right">
             <button class="btn btn-primary mr-1" type="submit">Simpan</button>
             <button class="btn btn-secondary" type="reset" value="reset">Batal</button>
       </div>
    </div>
</form>

Script Root nya

Route::get('pengajar/{id_pengajar}/edit', 'PengajarController@edit')->name('pengajar.edit');
Route::patch('pengajar/{id_pengajar}','PengajarController@update')->name('pengajar.update');
avatar selmaniaamanda
@selmaniaamanda

4 Kontribusi 0 Poin

Diperbarui 3 tahun yang lalu

2 Jawaban:

<div>Mungkin untuk codingnnya bisa dirubah dulu untuk dapatin data dari imagenya, untuk mendapatkan namanya bisa menggunakan getClientOriginalName(), untuk mendapatkan ekstensinya gunakan getClientOriginalExtension() baru kemudian buat variabel untuk menggabungkannya dan baru di simpan ke database namanya</div>

avatar Taufikhdyt17
@Taufikhdyt17

16 Kontribusi 4 Poin

Dipost 3 tahun yang lalu

<pre>//seperti ini contohnya $nama = mt_rand(1, 9999); |

| $today = Carbon::today()-&gt;toDateString(); | $date = str_replace('-','',$today); |

| $ext_foto = $request-&gt;file('map')-&gt;getClientOriginalExtension(); | $foto_file = $date."-".$nama.".". $ext_foto; |

| $path = $request-&gt;file('map')-&gt;storeAs('public/map', $foto_file); |

| $mappingcovid = mappingcovid::create([ | 'tgl' =&gt; $request-&gt;tgl, | 'map' =&gt; $foto_file | ]);</pre>

avatar Taufikhdyt17
@Taufikhdyt17

16 Kontribusi 4 Poin

Dipost 3 tahun yang lalu

Login untuk ikut Jawaban