Upload banyak file dengan php

upload banyak file dengan php

Beberapa waktu lalu saya sempat menulis tentang bagaimana membuat form serta script upload file dengan php, tapi masih dengan cara melampirkan satu file saja. Berikut ini saya akan menjelaskan lagi bagaimana jika yang di upload terdiri dari beberapa file yang dikirim secara bersamaan dengan php.

Membuat form upload banyak file

Kita akan buat sebuah form untuk banyak file lengkap dengan judul seperti tampilan berikut :

upload banyak file

Pada form diatas bisa dilihat bahwa nantinya masing2 file yang diupload, disertakan judul dalam bentuk text sehingga keduanya (judul dan file dikirim secara bersamaan).

Perintahnya membuat form diatas seperti ini :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="https://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Upload banyak file dengan php</title>
<style type="text/css">
#form-upload {
 width:500px;
 margin:0 auto;
 border:1px solid #ccc;
 border-radius:10px;
 padding:10px;
 background-color:#E2FEEA;
 font:14px "Trebuchet MS";
}
</style>
</head>
<body>
<div id="form-upload">
<form action="file-upload.php" method="post" enctype="multipart/form-data">
  <h3 align="center">Isikan judul dan pilih file yang akan di upload :</h3>
  <p> File 1<br />Judul : <input name="judul[]" type="text" size="30" maxlength="30" />  <input name="nama_file[]" type="file" /></p>
  <p>File 2<br />Judul :   <input name="judul[]" type="text" size="30" maxlength="30" /> <input name="nama_file[]" type="file" /></p>
  <p>File 3<br /> Judul :  <input name="judul[]" type="text" size="30" maxlength="30" /> <input name="nama_file[]" type="file" /></p>
  <p>* Hanya file gambar jpg/gif/png</p>
  <p align="center"><input name="btnKirim" type="submit" id="btnKirim" value="Kirim File" /></p>
</form>
</div>
</body>
</html>

Script diatas bisa disimpan dengan nama upload.php.

Jika anda amati script membuat form diatas ( elemen form judul[] dan userfile[]), saya menggunakan objek textfield dan file field dengan jenis array sehingga memungkinkan kita menambahnya sebanyak2nya sesuai keperluan. Jangan lupa

Membuat proses upload banyak file dengan php

Formnya sudah jadi tinggal membuat file yang menanggani form upload dan nanti disimpan dengan nama file-upload.php. Isi filenya seperti berikut :

<?php
$namafolder="photo/"; //tempat menyimpan file
for($i=0; $i<count($_FILES['nama_file']); $i++) 
{
  if (!empty($_FILES["nama_file"]["tmp_name"][$i]))
  {
    $jenis_gambar=$_FILES['nama_file']['type'][$i];
    $judul_gambar=$_POST['judul'][$i];
    if($jenis_gambar=="image/jpeg" || $jenis_gambar=="image/jpg" || $jenis_gambar=="image/gif" || $jenis_gambar=="image/x-png")
    { 
      $gambar = $namafolder . basename($_FILES['nama_file']['name'][$i]); 
      if (move_uploaded_file($_FILES['nama_file']['tmp_name'][$i], $gambar)) {
  //tampilkan ke layar
  echo "Judul Gambar : ".$judul_gambar."<br />";
  echo "Jenis Gambar : ".$jenis_gambar."<br />";
  echo "<img src=\"$gambar\" width=\"100\" alt=\"$judul_gambar\" /><br />";
  //tambahkan proses menyimpan database jika diperlukan seperti berikut 
  //mysql_query("insert into tb_mgambar(judul_gambar,nama_file) values('$judul_gambar','$gambar')") or die(mysql_error());
 } 
     } 
     else 
     {
 echo "Jenis gambar yang anda kirim salah. Harus .jpg .gif .png<br />";
     }
   }
}
?>

Anda bisa sesuaikan script upload banyak file diatas sesuai keperluan seperti untuk jenis file selain gambar (rar, pdf, mp3 dll) atau juga bisa anda kembangkan berbasis database seperti photo galleri.

Hasil tampilan akhir jika berhasil upload akan tampil seperti berikut :

tampilan hasil upload banyak file

Silahkan download contoh lengkapnya : Download Script Upload banyak File.

Cara menjalankanya cukup anda ekstrak di dalam folder web server (htdocs), dan jalankan file upload-banyak.php.

Semua script serta contoh uploadnya sudah saya coba jalankan dan semuanya bisa dipertanggungjawabkan :). Jika ada kesalahan, silahkan komentar dibawah ini.

Semoga bermanfaat, dan selamat mencoba.

Zainal Hakim

** Bebas disunting dengan menyebutkan sumber **

Artikel Lainnya

  • Menampilkan latar gambar/background secara acak dengan php
    Tampilan sebuah halaman tentunya harus menarik dan memiliki kesan khusus pada saat ditampilkan kepada pengunjung. Ada tips khusus bagi yang senang ganti-ganti latar gambar halaman web dengan kode php.
  • Mengatur format tanggal dalam php
    PHP telah menyediakan fungsi untuk menampilkan tanggal dalam berbagai format yang dituliskan dalam bahasa inggris. Bagaimana jika kita perlu menampilkan tanggal dalam format indonesia? Artikel berikut akan menjelaskan beberapa format tanggal dalam php dan cara menampilkannya. SIlahkan anda simak.
  • Membuat form kontak dengan html dan php
    Form kontak adalah salah satu bagian penting yang harus ada dalam sebuah website. Anda bisa lihat website-website yang pernah anda kunjungi, semuanya pasti menyediakan form kontak ini.
  • Perbedaan session dan cookies dalam php
    Dalam php kita mengenal session dan cookies yang digunakan untuk menyimpan informasi pengguna. Secara umum memang sulit dibedakan karena dari segi fungsinya bisa dikatakan sama. Artikel berikut akan membantu anda membedakanya dari berbagai sisi implementasinya.
  • Apa yang harus diketahui sebelum belajar php
    PHP merupakan pemrograman yang saat ini berkembang pesat. Banyak website dan aplikasi web baru bermunculan dijaringan internet. Inovasi-inovasi yang sangat variatif sesuai keperluan dikembangkan dengan menganut sistem terbuka (opensource) dihasilkan dari

Kiriman terbaru