Wednesday, February 6, 2013

Cek Tipe Dan Ukuran File Sebelum Di Upload

Sekarang saya akan membahas tentang validasi upload , karena pada proses upload php , semua file bisa di upload langsung . nah permasalahannya , ketika kita hanya ingin mengupload file foto saja bagaimana?

Sederhana saja , nanti saya kan menggunakan fungsi dari php , seperti explode() . fungsi ini berguna untuk memisahkan karakter dengan parameter tertentu

contoh

<?php
$nama="deden.hendra";
$hasil=explode('.',$nama);
echo $hasil[0];
?>

dari code tersebut , akan muncul deden saja , karena kita memanggil array dari hasil pemisahan karakter tersebut , hasil dari pengexlode-an akan menjadi array , langsung aja kita ke kasus uploadnya

saya akan membuat sebuah form , yang nantinya hanya bisa mengupload file extensi png,jpg/jpeg saja dengan ukuran maksimal 1MB .

Langkah pertama buatlah formnya

form.php

<form method="post" action="proses_upload.php" enctype="multipart/form-data">
    <input type="file" name="foto">
    <input type="submit" value="Upload">
</form>


perhatikan

atribute enctype jangan sampai terlupakan , karena jika tida ada itu upload pun tak akan jadi

sekarang buat proses untuk uploadnya

proses_upload.php
<?php
$folder    =    "foto/";

$max        =    10000;

$foto        =    $_FILES['foto']['name'];
$tipe        =    $_FILES['foto']['type'];
$size        =    $_FILES['foto']['size'];

$pindah    =    $folder.$foto;

$tipe_baru    =    explode('.',$foto);

$hasil_pecah_tipe    =    $tipe_baru[1];

if($hasil_pecah_tipe=="png" || $hasil_pecah_tipe=="jpg" || $hasil_pecah_tipe=="jpeg"){
    if($size>$max){
        echo "Data terlalu besar,maximal 1MB";   
    }else{
        echo "File berhasil di upload";           
        move_uploaded_file($_FILES['foto']['tmp_name'], $pindah);
    }   
}else{
    echo "Data yang bisa diupload hanya png dan jpg";   
}
echo $hasil_pecah_tipe;
?>


penjelasan :

  1. $folder adalah tempat yang akan kita gunakan di folder kita untuk menyimpan file yang akan kita upload
2.$tipe_baru nah variable ini yang berperan dalam pengecekan tipe file
3.$max merupakan ukuran maksimal yang saya tentukan untuk nanti proses penguploadan

yah itulab pembahasan pada artikel sekarang , semoga bermanfaat dan selamat mengoding :D

No comments:

Post a Comment