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