Minggu, 07 April 2013

Tutorial HTML & PHP upload dan download


Assalamau'alaikum Wr. Wb

Setelah sebelumnya Saya ngeshare tutorial upload file. Kali ini Saya akan ngeshare tutorial HTML & PHP upload dan download file yang akan masuk ke database dan di simpan di folder di dalam folder document root anda, dan file yang sudah di upload dapat di hapus. Berikut langkah-langkah pembuatannya :

Langkah 1 : Pembuatan Database
  1. Buat database dengan nama upload
  2. Buat tabel dengan nama file, dengan struktur tabel seperti berikut :  

    3.  Selesai membuat database, lanjut ke langkah 2.

Langkah 2 : Buat Folder
  1. Buat Folder dengan nama updown dalam document root anda (contoh di htdocs pada MYSQL ).
  2. Simpan semua file yang nanti di buat di folder updown tersebut.
  3. Lalu buat folder dalam folder updown dan beri nama data (untuk menyimpan file yang nanti di upload).
Langkah 3 : Membuat Script form upload

Ketikan script berikut dan simpan dengan nama formupload.php  :
<html>
<head><title>Upload dan Download</title>
</head>
<body>
    <form enctype="multipart/form-data" action="ProsesUpload.php" method="POST">
        <input type="hidden" name="MAX_FILE_SIZE" value="3000000" />
        Pilih File: <input name="userfile" type="file" />
        <input type="submit" value="Upload" />
        <br>
        <a href="list.php">Lihat Daftar File</a>
    </form>
    <font color="red"><h5>Ysabtian.blogspot.com</h5></font>
</body>
</html>

Langkah 4 : Buat script proses

Ketikkan script berikut dan beri nama prosesupload.php

<?php

$uploaddir = 'data/';
$fileName = $_FILES['userfile']['name'];
$tmpName = $_FILES['userfile']['tmp_name'];
$fileSize = $_FILES['userfile']['size'];
$fileType = $_FILES['userfile']['type'];
$fileError = $_FILES['userfile']['error'];
$uploadfile = $uploaddir . $fileName;
mysql_connect('localhost','root','');
mysql_select_db('upload');

if($fileSize > 0 || $fileError == 0){
    $move = move_uploaded_file($_FILES['userfile']['tmp_name'],$uploadfile);
    if($move){
        echo "<br><h3>Proses Upload Berhasil </h3>";
        echo "<a href='list.php' >Daftar File</a>  <a href='FormUpload.php'>Form Upload</a>";

        $q = "INSERT into file (name, size, type, lokasi) VALUES ('$fileName', '$fileSize', '$fileType','data/$fileName')";
        $result = mysql_query($q);

        $q1 = "SELECT lokasi from file where name = '$fileName' limit 1 ";
        $result = mysql_query($q1);

        while ($data = mysql_fetch_array($result)) {
            $loc = $data['lokasi']; ?>
            <br/>
            <h2> Tampilan File/Gambar Yang Anda Upload : </h2>
            <img src="<?php echo $loc; ?>" />

            <?php
        }
    }
    else {
        echo "<h3>Gagal! </h3>";
    }
}
else {
    echo "Gagal Untuk Mengupload : ".$fileError;
}
?>
<font color="red"><h5>Ysabtian.blogspot.com</h5></font>

Langkah 5 : Buat script list

ketikkan script berikut dan beri nama list.php
<style type="text/css">
table { border:1px solid #000000; padding:4; margin:auto }

</style>
<table cellspacing="3">
<tr align="center" bgcolor="#666666">
    <th> No </th>
    <th> Nama File </th>
    <th> Ukuran </th>
    <th> Action </th>
</tr>
<?php


mysql_connect('localhost','root','');
mysql_select_db('upload');

$perintah=mysql_query("SELECT * FROM file Order by id");
$no=1;
while ($data=mysql_fetch_array($perintah))
{
    if ( ($no % 2)== 0 )
       { $warna="#E1E1E1"; }
      else
      { $warna="#FFFFFF"; }
     
echo "<tr bgcolor= $warna > "; ?>
        <td> <? echo "$no"; ?> </td>
        <td> <? echo "".$data['name']." "; ?> </td>
        <td> <? echo "".$data['size']." bytes "; ?> </td>
        <td> <? echo "<a href='download.php?id=".$data['id']."' >Download</a> || <a href='hapus.php?id=".$data['id']."'>Delete</a> "; ?> </td>
</tr>
<?
$no++;
}
?>
</table>
<a href="formupload.php">Kembali ke Formupload</a><br>
<font color="red"><h5>Ysabtian.blogspot.com</h5></font> 

Langkah 6 : Buat script download

ketikkan script berikut dan beri nama download.php
<?php

mysql_connect('localhost','root','');
mysql_select_db('upload');

$id = $_GET['id'];
$query = "SELECT * FROM file WHERE id = '$id'";
$hasil = mysql_query($query);
$data = mysql_fetch_array($hasil);

header("Content-Disposition: attachment; filename=".$data['name']);
header("Content-length: ".$data['size']);
header("Content-type: ".$data['type']);
$fp = fopen("data/".$data['name'], 'r');
$content = fread($fp, filesize('data/'.$data['name']));
fclose($fp);
echo $content;
exit;
?>

Langkah 7 : Buat Script hapus

Ketikkan script berikut dan beri nama hapus.php
<?php
mysql_connect('localhost','root','');
mysql_select_db('upload');

$id = $_GET['id'];

$query = "SELECT * FROM file WHERE id = '$id'";
$hasil = mysql_query($query);
$data = mysql_fetch_array($hasil);
$namaFile = $data['name'];

$query = "DELETE FROM file WHERE id = $id";
mysql_query($query);

unlink("data/".$namaFile);
echo "File telah dihapus";
?>
<br>
<a href="list.php">Kembali Daftar File</a> <br>
<a href="formupload.php">Kembali ke Formupload</a><br>
<font color="red"><h5>Ysabtian.blogspot.com</h5></font>

Langkah 8 : Uji coba Script

   1. Pergi ke http://localhost/updown/formupload.php lalu akan tampil form seperti berikut :


   2. Klik Browse.., lalu pilih file yang akan di upload, setelah itu klik open, tampilannya seperti berikut :



   3. Setelah memilih file dan mengklik open, klik upload di formupload :


   4. Setelah mengklik upload maka akan muncul tampilan seperti berikut :

   5. Cek di folder data dalam folder updown dan di database, apakah file sudah ada.
   6. Jika sudah ada maka proses upload file berhasil.
   7. Untuk mendownload atau menghapus file yang sudah di upload maka klik Daftar File di tampilan
       berhasil, maka akan muncul seperti berikut :
   8. Untuk mendownload klik download, maka akan muncul kotak dialog seperti berikut lalu klik ok :
   9. Untuk menhapus klik Delete, maka akan muncul tampilan seperti berikut :
   10.Klik Kembali Daftar File, untuk ngecek data yang di hapus maka akan muncul :
 
Alhamdulillah tutorial HTML &  PHP upload dan download  file ini sudah selesai.
Semoga bermanfaat bagi kita semua.. Aamiin.
Sekian tutorial kali ini.
Wassalamua'alaikum Wr. Wb.

Download script
  1. formupload.php 
  2. prosesupload.php 
  3. list.php 
  4. download.php 
  5. hapus.php 
  6. database file.sql 

9 komentar:

  1. gan gk ada penjelasannya ya. .
    ane masi bingung nie ??

    BalasHapus
    Balasan
    1. itu dijadikan satu polder semuanya, terus inport databaenya di phpmyadminnya,.

      Hapus
  2. termksih setelh sya coba sukses progamnya.

    BalasHapus
  3. Maaf mas, mau tanya.. it kenapa dsalahn trus y d coding download bagian ==> $fp = fopen sampai coding kbwah, error. Terimakasih atas penjelasannya ☺

    BalasHapus
  4. Parse error: syntax error, unexpected end of file in C:\xampp\htdocs\updown\list.php on line 39
    ---Can you help me??-----

    BalasHapus
  5. Parse error: syntax error, unexpected end of file in C:\xampp\htdocs\updown\list.php on line 39
    ---Can you help me??-----

    BalasHapus
  6. function fopen nya ga di lampirin nih, makanya eror terus

    BalasHapus