Tipe file yang diizinkan untuk diupload

Sore gan. Saya mau nanya gimana caranya membatasi tipe file/ekstensi yang boleh diupload. Misalkan hanya boleh upload file bertipe .jpg .png, dsb.

ini function simpan/upload data saya:

 public function store(Request $request)
    {
        $file = $request->file('owner_photo');
        $fileName = $file->getClientOriginalName();
        $file->move("uploads/file", $fileName);

        $file2 = $request->file('dealer_photo');
        $fileName2 = $file2->getClientOriginalName();
        $file2->move("uploads/file", $fileName2);

        $credentials = [
            'dealer_name' => $request->dealer_name,
            'username' => $request->username,
            'password' => $request->password,
            'office_address' => $request->office_address,
            'phone_number' => $request->phone_number,
            'owner_photo' => $fileName,
            'dealer_photo' => $fileName2,
        ];

        $user = Sentinel::registerAndActivate($credentials);

        $role = Sentinel::findRoleBySlug('finance');

        $role->users()->attach($user);

        return back()->with('create', 'A new dealer added!');
    }

Berdasarkan code diatas, ekstensi file apapun yang saya upload tetap bisa disimpan. Sedangkan kebutuhan program hanya boleh mengupload file gambar.

Mohon bantuannya. Terima kasih.

avatar syecharbha
@syecharbha

44 Kontribusi 1 Poin

Diperbarui 6 tahun yang lalu

3 Jawaban:

coba pake ini gan

<pre> $extensi = pathinfo($dir, PATHINFO_EXTENSION); </pre>

<a href='php.net '>php.net </a>

avatar marilynbathory
@marilynbathory

61 Kontribusi 9 Poin

Dipost 6 tahun yang lalu

Agan gk divalidate ya? Di validate dulu gan sebelum distore. Ntar tinggal uji aja mimes typenya jpg, png atau gif(sesuai yg agan mau) <pre> //contoh $fileImg = $request-&gt;validate( ['images' =&gt; 'mimes:jpg|png|gif']);</pre>

avatar bosque
@bosque

187 Kontribusi 104 Poin

Dipost 6 tahun yang lalu

<pre> $allowed_ext = array('doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'pdf', 'rar', 'zip'); $file_name = $_FILES['file']['name']; $file_name_exp = explode(".", $file_name); $file_ext = strtolower(array_pop($file_name_exp)); // $file_ext = strtolower(end(explode('.', $file_name))); $file_size = $_FILES['file']['size']; $file_tmp = $_FILES['file']['tmp_name']; </pre> ganti aja sama png atau jpeg arraynya semoga membantu

avatar bagasnuralim
@bagasnuralim

61 Kontribusi 0 Poin

Dipost 6 tahun yang lalu

Login untuk ikut Jawaban