Handling Upload File di PHP


11/10/2016 05:16:46 291

Dalam mengkoleksi data klien, kadang kita juga memerlukan beberapa file misalkan gambar, atau informasi-informasi lain seperti pdf, zip, rar atau video. Pada sisi klien, untuk mengekoleksi file perlu membuat input berupa input file, sedangkan pada sisi server perlu skripi yang digunakan untuk mengangani upload file.

Untuk membuat form yang dapat melakukan upload data, tag <form> harus memiliki atribut method dengan nilai POST sehingga dapat mengirim data yang besar, serta atribut enctype dengan nilai multipart/form-data untuk memberitahu bahwa terdapat file yang dikirim, serta atribut action yang menunjukan program yang memproses, dalam hal ini PHP upload.php seperti contoh berikut:

form-upload.php

<form action="upload.php" method="POST" enctype="multipart/form-data">
    Gambar <input type="file" name="gambar"> 
    <input type="submit" value="Simpan">
</form>

Proses pada PHP untuk memproses file upload terdapat beberapa langkah: 1. File yang dikirim akan diambil dengan menggunakan variabel global $_FILES['gambar']['tmp_name'] dan dimasukan pada variabel $file_gambar, dimana index gambar sesuai dengan atribut name pada form. 2. Untuk mendapatkan nama file dengan menggunakan $_FILES['gambar']['name'] dan dimasukan pada variabel $nama_gambar. 3. Pintahkan gambar sesuai dengan namanya dengan menggunakan perintah PHP move_uploaded_file($file_gambar, $nama_gambar) 4. Maka file akan berada pada pada server, bersama dengan file form-upload.html, dan upload.php

upload.php

<?php
$file_gambar = $_FILES['gambar']['tmp_name'];
$nama_gambar = $_FILES['gambar']['name'];

move_uploaded_file($file_gambar, $nama_gambar);