Simple Upload and Download Script

Kemarin malam jam 10:30 kalau tidak salah di grup ada yang nanya minta buatkan script upload dan download simpel pake database, oke saya buatkan sangat amat sederhana menggunakan 1 file saja :D. langsung saja saya tunjukkan scriptnya

<?php
 mysql_connect("localhost", "root", "");
 mysql_select_db("php_mastering");
 $acc_ext = array("zip", "rar");
 $max_sze = 900000; #in byte
 if(isset($_FILES['f']) and $_FILES['f']['tmp_name']){
  $file_path = $_FILES['f']['tmp_name'];
  $file_name = $_FILES['f']['name'];
  $file_size = $_FILES['f']['size'];
  #mengambil extensi file yang di upload
  $file_extn = explode(".", $file_name);
  #mengacak nama agar tidak ada kemungkinan nama file sama
  $file_pt = $file_extn[0]."_".strtotime(date('Y-m-d H:i:s')).".".$file_extn[count($file_extn)-1];
  #mengacak apakah extensi support dan ukuran file kurang dari syarat
  if(in_array(strtolower($file_extn[count($file_extn)-1]), $acc_ext, true) and $file_size < $max_sze){
   echo "File Sukses Terupload";
   mysql_query("INSERT INTO dftr VALUES (NULL, '$file_pt')");
   #upload
   move_uploaded_file($file_path, "./file/$file_pt");
  }else{
   echo "Tolong Penuhi Syarat Untuk Mengupload File";
   unlink($file_path);
  }
 }
?>
<form enctype="multipart/form-data" method="post">
 File : <input type="file" name="f"><br>
 Supported Extension : <?= implode(", ", $acc_ext) ?><br>
 Max File Size : <?= $max_sze ?> byte<br>
 <input type="submit" value="Upload">
</form>
<table border=1 cellpadding=0 cellspacing=0>
 <tr>
  <th>No</th>
  <th>Nama</th>
  <th>Aksi</th>
 </tr>
 <?php
  $q = mysql_query("SELECT * FROM dftr");
  $no = 0;
  while($d = mysql_fetch_assoc($q)){
   $no++;
   echo "
   <tr>
    <td>$no</td>
    <td>{$d['fname']}</td>
    <td><a href='file/{$d['fname']}'>Download</a></td>
   </tr>
   ";
  }
 ?>
</table>

Itu scriptnya. sedikit kan ya :D. saya jelaskan sedikit yang belum saya kasih komentar, yaitu :

  1. IF di situ mengondisikan jika sudah ada file yang di upload maka kondisi akan bernilai true dan juga sebaliknya jika belum akan bernilai false
  2. Ketika telah masuk ke if upload sudah saya tuliskan komentar codingnya dan harusnya kalian sudah mengerti :D
  3. in_array itu untuk mencari string dalam array, string tersebut ada atau tidak dalam array. Jika ada maka akan kembali dengan nilai true dan juga sebaliknya jika tidak maka akan mengembalikan nilai false.
  4. move_uploaded_file itu fungsinya sama seperti cut > paste cuman fungsi tersebut hanya bisa memindahkan file yang telah di upload dan di simpan sementara di folder temp.
  5. unlink itu fungsinya untuk menghapus file.
  6. coding sisanya hanya untuk menampilkan file yang telah di upload dan di tambah ke database sebelumnya

Mungkin itu saja sudah cukup. Jika ada yang tidak mengerti silahkan berkomentar atau bisa bergabung di grup saya https://www.facebook.com/groups/ind.linux/. Semua pertanyaan anda mengenai pemrogaman web terutama PHP akan saya jawab sebisa saya dan mungkin teman-teman grup juga akan membantu anda dalam menyelesaikan masalah anda.

Bagi yang mau mencoba langsung scriptnya, saya telah mengupload projeknya. Silahkan anda download secara cuma-cuma tanpa bayar. Ilmu yang saya kasih gratis kok :) Download Here

Selamat pagi dan salam hangat.

By : L Shaf

Komentar

  1. waduh jago PHP toh ternyata, bisa nih ajarin dikit :D

    BalasHapus
    Balasan
    1. hahaha biasa aja kok saya gan. ga jago2 amat. gabung aja ke https://www.facebook.com/groups/ind.linux/ gan :)

      Hapus

Posting Komentar

Postingan populer dari blog ini

Menampilkan Jam Server dengan Javascript dan PHP

Mind Breaker

数字言語 [Suuji Gengo]