Kali ini kita akan mencoba membuat sebuah script yang sebenarnya sangat sederhana jika kita mengetahui fungsi - fungsi dasar yang digunakan dalam proses Upload dengan menggunakan PHP.
Pengalaman pribadi yang kami alami dulu adalah mencari - cari contoh tutorial Upload file dengan php, dan contoh - contoh yang kami dapatkan dulu cukup membuat kepala pening untuk kalangan pemula, mengapa demikian ? Karena kami belum mengerti bagian - bagian dasarnya ?
Supaya hal tersebut tidak terulang pada pembaca Media Kreatif, cobalah ikuti langkah - langkah berikut dengan seksama.
Buat script Upload file yang sangat sederhana dulu.
<?php
if
(isset(
$_POST
[
'btn'
])){
$tipe
=
$_FILES
[
'file'
][
'type'
];
$nama
=
$_FILES
[
'file'
][
'name'
];
$size
=
$_FILES
[
'file'
][
'size'
];
if
(move_uploaded_file(
$_FILES
[
'file'
][
'tmp_name'
],
$nama
)) {
echo
'Berhasil mengupload '
.
$nama
;
}
else
{
echo
"Eror"
;
}
}
?>
<form enctype=
"multipart/form-data"
action=
""
method=
"POST"
>
Pilih File : <input name=
"file"
type=
"file"
/><br />
<input type=
"submit"
value=
"Upload File"
name=
"btn"
/>
</form>
Penjelasan dari script diatas adalah sebagai berikut :
- Form yang kita gunakan dalam proses Upload file tidak sama dengan Form yang kita gunakan hanya untuk mengirim Text, akan tetapi kita harus menambahkan fungsi enctype="multipart/form-data" supaya file dapat dikenali
- Pada script diatas, pemrosesan upload file dilakukan oleh script yang sama, dimana kita lihat script phpnya kita tempatkan jadi 1 dengan form uploadnya.
- Pada bagian script PHP, kita bisa melihat beberapa fungsi $_FILES yang bisa kita gunakan dalam proses Upload file, diantaranya :
- $_FILES['file']['type'] => Fungsi ini digunakan untuk mengetahui jenis file yang di upload
- $_FILES['file']['name'] => Fungsi ini digunakan untuk mengetahui nama file yang di upload
- $_FILES['file']['size'] => Fungsi ini digunakan untuk mengetahui ukuran file yang di upload
- perintah move_uploaded_file($_FILE['file']['tmp_name'], $nama) adalah fungsi paling utama dalam script upload kita. Dimana fungsi inilah sebenarnya yang digunakan php untuk mengirimkan file dari komputer kita ke web server. Dalam fungsi tersebut , kita melihat dua bagian utama, yaitu :
- Sumber file dari komputer kita => $_FILE['file']['tmp_name']
- Tujuan upload file yaitu $nama , Dalam hal ini kami tidak menyebutkan pada direktori mana file akan kita tempatkan, sehingga saya menuliskan secara langsung tujuan filenya dengan $nama, yang artinya file yang kita upload nantinya akan disimpan menjadi 1 direktory dengan script uploadnya, nama filenya juga akan tetap sama dengan nama file yang kita upload.
Dari uraian singkat diatas, kita sudah bisa membuat script upload file yang sederhana, mengapa kami katakan script tersebut sangat sederhana ? Jawabannya adalah : Karena belum ada batasan - batasan terhadap file yang akan kita upload. Dengan script diatas, kita bisa mengupload semua jenis file.
Batasan - batasan seperti apa yang harus kita buat ?
- Pada proses upload gambar, maka tentukan file apa saja yang boleh di upload , misalnya hanya boleh mengupload gambar dengan format jpg , png dan gif . selain format tersebut akan ditolak
- Pada proses Upload dokumen, tentukan type dokumen apa saja yang boleh di upload, apakah zip, xls, doc,dll sesuai keinginan kita.
- Pada proses Upload secara umum, kita harus menentukan ukuran maximal file yang bisa di upload, supaya kita bisa menghemat kapasitas hosting server kita
- Jangan biarkan orang - orang mengupload script - script executable seperti php untuk menjaga kemanan website kita.
Sebenarnya yang membuat sebuah script php itu terlihat banyak dan komplek adalah batasan - batasan tersebut, kalo kita melihat bentuk dasarnya tentunya sangat simple seperti yang terlihat diatas.