Lanjutan upload file di php: validasi upload

Pada artikel kali ini kita akan membahasa lanjutan tutorial upload file yang sebelumnya sudah di uploadi di sini.

Sekarang kita akan mencoba untuk memvalidasi/modifikasi upload file.

Script pada postingan sebelumnya adalah seperti berikut:

<?php
 //mendapatkan nama file 
//Tambahan basename untuk real name saja
$nama_file = basename($_FILES['berkas']['name']); 
//mendapatkan tipe file 
$tipe_file = $_FILES['berkas']['type']; 
//mendapatkan tmp_name 
$tmp_name = $_FILES['berkas']['tmp_name']; 
//Tambahan ukuran size
$ukuran_file = $_FILES['berkas']['size']; 
//set folder uplod 
$folder_tujuan = "/file_upload/"; 
//cek jika tombol disubmit 
if(isset($_POST["submit"])) { 
//lakukan upload ke folder 
if(move_uploaded_file($tmp_name, $folder_tujuan .$nama_file)){ 
//file berhasil terupload 
echo "Berhasil upload"; }else{
echo "Gagal upload"; }
} ?>

Untuk mengecek apakah file sudah ada sebelumnya gunakan fungsi file_exist():

<?php
if(file_exists(
$folder_tujuan.$nama_file
)){
echo"file sudah ada";
}
?>

Untuk membatasi ukuran file. Misalkan kita hanya ingin file yang di upload itu berukuran 200kb saja.

<?php
if($ukuran_file>200000){
echo"ukuran file tidak lebih dari 200kb";
}
?>

Membatasi jenis file
Misal kita hanya ingin tipe file gambar contohnya gif,jpg,png. Gunakan fungsi in_array dalam hal ini untuk membuat penampung jenis file. Contohnya;

<?php
//Tipe berkas
$tb = array("image/gif","image/jpg","image/png");
$ia = in_array($tipe_file,$tb);
if(!$ia){
echo"hanya diperbolehkan berkas dengan tipe png,jpg,gif!";
}
?>

Pada if akan mengecek tipe file yang diupload apakah sesuai ada dalam daftar $tb

Otomatis rename file dengan tanggal menggunakan fungsi date:

<?php
$nama_file = date("dmY").$_FILES['berkas']['name'];
?>

sehingga bila upload file berlaku nama seperti ini: 10012020img12.png misalnya.

Filter pada input file untuk menampilkan hanya gambar saja. Yaitu dengan menggunakan atribut accept contohnya:

<Input type="file" accept="image/*>

Hapus file jika file ada menggunakan fungsi unlink(). Berikut contoh kodenya:

<?php 
if(file_exists($folder_tujuan.$nama_file)){
 unlink($folder_tujuan.$nama_file);
}
?>

Happy coding 🙂

Related posts

Leave a Comment