Langsung ke konten utama

Skrip PHP untuk Upload File

 

Petani Kode
author Ahmad Muhardian • update terakhir 25 Dec 2015

Memahami Skrip PHP untuk Upload File


#
Cara Upload File di PHP

Bagaimana cara membuat fitur uplaoad file di PHP?

Pertanyaan ini cukup sering ditanyakan.

Karena itu, mari kita bahas bersama…

Upload file merupakan kegiatan pengiriman file dari client (pengunjung web) ke server.

Upload file ke aplikasi web

Biar lebih gampang, mari kita bahas dengan coding

Kode PHP untuk Upload File

Silahkan buat dua file:

  1. index.html untuk membuat form upload
  2. upload.php untuk menerima dan memproses file yang di-upload

Isi file index.html seperti ini:

<!DOCTYPE html>
<html>
<head>
    <title>Upload File</title> 
</head>

<body>
    <form action="upload.php" method="post" enctype="multipart/form-data">
        Pilih file: <input type="file" name="berkas" />
        <input type="submit" name="upload" value="upload" />
    </form> 
</body> 
</html>

Fokus pada elemen <form>. Perhatikan di sana ada beberapa hal yang harus dipahami:

  • atribut action="upload.php" artinya kita akan mengirim filenya ke upload.php;
  • atribut enctype atribut ini wajib disertakan untuk form upload;
  • atribut name akan menjadi nama indeks di dalam PHP.

Sekarang kita coba dulu isi file upload.php seperti ini:

<?php
echo "<pre>";
print_r($_FILES);
echo "</pre>";
?>

…dan coba lakukan upload.

Maka hasilnya kan seperti ini:

Upload file di PHP

Apa artinya ini?

Artinya: file yang kita upload akan ditampung dalam variabel $_FILES. Variabel ini merupakan sebuah array yang menampung data tentang file-nya.

Di sana ada beberapa indeks:

  • name adalah nama file yang di-upload;
  • type adalah jenis file yang di-upload;
  • tmp_name adalah nama file yang berada di dalam direktori temporer server;
  • error menyatakan apakah ada error atau tidak;
  • size adalah ukuran file-nya.

Pertanyaan: Di mana lokasi file yang baru saja kita upload?

Lokasinya akan disimpan di direktori temporari atau direktori sementara di server.

Tugas kita berikutnya adalah memindahkan file ini ke dalam aplikasi kita.

Bagaimana caranya?

Ini akan kita bahas di langkah berikutnya.

Memindahkan File yang sudah di-upload

Setiap file yang kita upload ke server, filenya akan disimpan di dalam direktori temporer.

Untuk memindahkan file ini ke dalam direktori aplikasi kita, maka kita membutuhkan sebuah fungsi bernama: move_uploaded_file().

Silahkan ubah kode upload.php menjadi seperti ini:

<?php

// ambil data file
$namaFile = $_FILES['berkas']['name'];
$namaSementara = $_FILES['berkas']['tmp_name'];

// tentukan lokasi file akan dipindahkan
$dirUpload = "terupload/";

// pindahkan file
$terupload = move_uploaded_file($namaSementara, $dirUpload.$namaFile);

if ($terupload) {
    echo "Upload berhasil!<br/>";
    echo "Link: <a href='".$dirUpload.$namaFile."'>".$namaFile."</a>";
} else {
    echo "Upload Gagal!";
}

?>

Variabel $terupload akan bernilai true apabila file berhasil dipindahkan dan akan bernilai false apabila gagal.

Sebelum mencoba, silahkan buat dulu direktori bernama terupload di dalam direktori project-nya.

Direktori untuk upload file

Sekarang mari kita coba upload file.

Jika berhasil, maka akan tampil seperti ini:

Upload File berhasil

Untuk memastikan, coba periksa direktori terupload:

Upload Gambar Berhasil

Berhasil 🎉…

Apa Selanjutnya?

Ruang lingkup pembahasan kita cuma sampai memahami konsep upload file di PHP saja. Untuk langkah berikutnya, silahkan lakukan pengembangan sendiri.

Seperti:

  • Menyeimpan data gambar di Database.
  • Melakukan filter terhadap data yang di-upload.
  • Melakukan pengolahan citra atau image processing dengan PHP
  • dll.

Selamat belajar.

Author avatar
Dukungan untuk Penulis

Suka dengan tulisan saya? Kamu bisa memberikan dukungan dengan mentraktir kopi di trakteer.id atau bagikan konten ini di sosial media.

Komentar

Postingan populer dari blog ini

Pemograman R Studio

  Metode Numerik Menggunakan R Pengantar Gambaran Isi Buku Cara Berkontribusi dalam Buku Ini Ucapan Terima Kasih Lisensi 1  Bahasa Pemrograman R 1.1  Sejarah R 1.2  Fitur dan Karakteristik R 1.3  Kelebihan dan Kekurangan R 1.4  RStudio 1.5  Menginstall R dan RStudio 1.6  Working Directory 1.6.1  Mengubah Lokasi Working Directory 1.6.2  Mengubah Lokasi Working Directory Default 1.7  Memasang dan Mengaktifkan Paket R 1.8  Fasilitas Help 1.8.1  Mencari Help dari Suatu Perintah Tertentu 1.8.2  General Help 1.8.3  Fasilitas Help Lainnya 1.9  Referensi 2  Kalkulasi Menggunakan R 2.1  Operator Aritmatik 2.2  Fungsi Aritmetik 2.3  Operator Relasi 2.4  Operator Logika 2.5  Memasukkan Nilai Kedalam Variabel 2.6  Tipe dan Struktur Data 2.7  Vektor 2.7.1  Membuat vektor 2.7.2  Missing Values 2.7.3  Subset Pada Vektor 2.7.4  Operasi Matematis Menggunakan Vektor ...

MIGRASI DATABASE DARI SQLite KE MySQL (Part-1)

  MIGRASI DATABASE DARI SQLite KE MySQL (Part-1) Pemakaian yang mana lebih baik dalam membuat database_musik di mysql atau Exel yang cell Cell pada tabel dilakukan operasi fungsi logika matematika. Untuk keperluan membuat database atau tabel yang memerlukan operasi logika atau matematika, seperti yang Anda sebutkan, MySQL jauh lebih baik dibandingkan Excel. Berikut adalah beberapa alasan mengapa MySQL lebih disarankan: 1. **Kapasitas dan Skalabilitas**: MySQL dapat menangani jumlah data yang jauh lebih besar daripada Excel. Ini penting jika Anda berencana untuk menyimpan banyak data atau melakukan operasi yang kompleks di atas data tersebut. 2. **Kekuatan dan Kinerja**: MySQL dirancang khusus untuk memproses query dan operasi basis data dengan cepat. Ini termasuk operasi matematika, logika, dan agregasi data yang umum dilakukan dalam aplikasi. 3. **Fleksibilitas Struktur**: Dalam MySQL, Anda dapat dengan mudah menentukan struktur tabel yang kompleks dan melakukan kueri yang lebih r...

Cara Menjadi Pengembang Front End – Keterampilan Front End Web Dev

  Menyumbangkan Belajar coding —  kurikulum 3.000 jam gratis 10 JUNI 2022 / #PENGEMBANGAN UJUNG DEPAN Bagaimana Menjadi Pengembang Front End – Keterampilan Front End Web Dev Joel Olawanle Beberapa profesional dengan bayaran tertinggi di dunia adalah pengembang front-end.  Mereka menggunakan pengetahuan dan bakat mereka untuk merancang situs web yang menarik dan ramah pengguna. Pengembang front-end tidak memerlukan gelar atau sertifikat sekolah untuk bekerja.  Sebaliknya, mereka harus memahami dasar-dasar pengembangan front-end, bahasa pemrograman, dan kerangka kerja pengembangan front-end. Dalam panduan ini, Anda akan belajar bagaimana menjadi pengembang front end dengan terlebih dahulu memahami apa yang dimaksud dengan pengembangan front end, keterampilan teknis dan soft skill yang diperlukan, bahasa dan kerangka kerja yang tersedia, dan beberapa langkah untuk memulai. Seorang pengembang front-end di Amerika Serikat dapat memperoleh rata-rata $86,178 per tahun, menu...