Minggu, 08.01.2010, 01:27am (GMT)
  Depan
  Profil
  RSS
  Links
  PetaSitus
  Kontak
  CHATTING
 
INAHOST.COM | Hosting Murah IIX & USA mulai dari Rp. 6500/thn ; Jasa Pembuatan Website | Company Profile | Web Application | Corporate Identity | CD interactive ; Puasa Adalah Benteng Penghalang ; Antisipasi Praktis Terhadap Flu Babi (H1N1) ; Jurus-jurus praktis memulai bisnis
::| Kata_kunci:       [Cari_Lengkap]
 
Semua Artikel  
  Pemrograman
 » PHP
 » Java
 » Ajax
 » ASP
  Desain Grafik
  Desain Web
  Hacking
  SEO
  Hosting
  Komputer
  Aplikasi
  Musik
  Film
  Ponsel & PDA
  Tips & Triks
  Internet
  Blog
  Cinta
  Agama Islam
  Kesehatan
  Bisnis
  Motivasi
  Aneh dan Unik
  Linux
  Materi Kuliah
  Umum
  Tahukah anda?
  Humor
  Skripsi/PI/TA
  Informasi
  I Love Indonesia
  ::| Artikel langganan
Nama Lengkap:
Email:
 
 
 
Pemrograman » PHP
 
Trick Upload PHP Auto Rename
Kamis, 05.21.2009, 01:59am (GMT)


Ok kita langsung saja pada inti pembahasan yaitu bagaimana mengupload file dengan menggunakan php ditambah sedikit trik pengembangan. Upload file merupakan salah satu fasilitas pada web yang kini semakin sering digunakan, file yang ada pada komputer local dapat kita simpan ke dalam directory server yang nantinya dimanfaatkan untuk berbagai keperluan. Dan tentunya setiap bahasa pemrograman web sudah dipastikan memiliki fungsi-fungsi tersendiri untuk melakukan upload file.
Seringkali saya bertanya pada diri sendiri “apabila terdapat 1 file yang diupload ke server, sedangkan terdapat file dengan nama yang sama pada server hosting, bagaimana caranya agar file yang sudah ada dengan nama yang sama tidak ter-replace/tertimpa oleh file yang baru diupload”.
Dan sekarang setelah mencari dan hunting diberbagai situs yang membahas tentang web programming akhirnya saya menemukan jawabannya.
Jawabannya adalah kita perlu melakukan sebuah validasi sebelum file di kirim ke server. Validasi itu berupa pengecekan apakah pada directory tujuan terdapat nama file yang sama dengan file yang akan kita upload.
Ok sekarang kita coba langsung kepada scriptnya saja. Yang perlu kita sediakan adalah :
  1. Folder direktori yang nantinya akan kita gunakan sebagai tempat untuk menampung hasil dari proses upload. Contoh : saya berinama foldernya “upload”
  2. Halaman form.php
  3. Halaman action.php

Langkah pertama adalah membuat halaman form.php

<form action="action.php" method="post" enctype="multipart/form-data">
 Pilih File Anda:
<input type="file" name="myfile" />
<input name="MAX_FILE_SIZE" type="hidden" id="MAX_FILE_SIZE" size="30000" />
<input type="submit" value="Upload" />
</form>


Langkah selanjutnya adalah membuat halaman action.php. scriptnya sebagai berikut :

<?php
    $uploadDir = "../upload/";
    // Apabila ada file yang di-upload
    if(is_uploaded_file($_FILES['myfile']['tmp_name'])){
        $uploadFile = $_FILES['myfile'];
        
        // Extract nama file
        $extractFile = pathinfo($uploadFile['name']);        
        $size = $_FILES['myfile']['size']; //untuk mengetahui ukuran file
        $tipe = $_FILES['myfile']['type'];// untuk mengetahui tipe file

         //Dibawah ini adalah untuk mengatur format gambar yang dapat di uplada ke server.
        Anda bisa tambahakan jika ingin memasukan format yang lain tergantung kebutuhan anda.

        $exts =array('image/jpg','image/jpeg','image/pjpeg','image/png','image/x-png');
        if(!in_array(($tipe),$exts)){
        echo 'Format file yang di izinkan hanya JPEG dan PNG';
        exit;
        }
        // dibawah ini script untuk mengatur ukuran file yang dapat di upload ke server
        if(($size !=0)&&($size>30000)){
        exit('Ukuran gambar terlalu besar’);
        }

$sameName = 0; // Menyimpan banyaknya file dengan nama yang sama dengan file yg diupload
        $handle = opendir($uploadDir);
        while(false !== ($file = readdir($handle))){ // Looping isi file pada directory tujuan
            // Apabila ada file dengan awalan yg sama dengan nama file di uplaod
            if(strpos($file,$extractFile['filename']) !== false)                
              $sameName++; // Tambah data file yang sama    
        }        
        
        /* Apabila tidak ada file yang sama ($sameName masih '0') maka nama file pakai
 * nama ketika diupload, jika $sameName > 0 maka pakai format "namafile($sameName).ext */
        $newName = empty($sameName) ? $uploadFile['name'] : $extractFile['filename'].'('.$sameName.').'.$extractFile['extension'];
        
        if(move_uploaded_file($uploadFile['tmp_name'],$uploadDir.$newName)){
        echo 'File berhasil diupload dengan nama: '.$newName;    
        }
         else{
        echo 'File gagal diupload';
    }
?>



Pada script di atas saya hanya mengkhususkan file yang di upload adalah imang/gambar. Jika anda ingin mengupload file dengan format yang lain silahkan anda ganti baris berikut :
$exts =array('image/jpg','image/jpeg','image/pjpeg','image/png','image/x-png');
        if(!in_array(($tipe),$exts)){
        echo 'Format file yang di izinkan hanya JPEG dan PNG';
        exit;
        }


Dengan menjalankan script sederhana diatas maka jika pada server terdapat nama file yang sama maka file yang akan diupload akan digantikan dengan format: namaFile(jumlahFileYangSama).extensionFile”. Contohnya apabila di dalam server terdapat nama file “doc.pdf”, maka file yang akan diupload nantinya akan menjadi direname secara otomaris menjadi “doc(1).pdf”, apabila pada proses upload selanjutnya ada file yang diupload dengan nama “doc.pdf” juga maka file itu akan di-rename dengan nama “doc(2).pdf”, dan begitu seterusnya.

Silahkan download script lengkapnya di sini :

http://www.ilmuwebsite.com/submit/trik_upload_byimran.zip

Sumber :
www.ilmuwebsite.com
dewa

Komentar (0)        Cetak        Beri tau temen        Atas


Artikel yang berhubungan:
» Tentang Bahasa Pemrograman Prolog
» Script PHP Menampilkan Hasil Pencarian Multikategori
» Menyimpan Tulisan Arab Ke MySQL
» Tentang DOM di Javascript
» Script Multiple File Upload Dengan PHP
» Ide Pembuatan Script PHP Upload Download File Via Folder
» Multi Language dengan PHP
» Tutorial membuat program java (J2ME) di HP
» Tentang Bahasa Pemrograman Web
» jQuery Ajax Display for Loading Content
» Sejarah Pemrograman bahasa java
» Cara Membuat Rss
» Sekilas Tentang Cake PHP
» Lebih dalam dengan operasi string bag.1
» Pengenalan dan Sejarah PHP


Artikel lain:
Cara Membuat Rss (04.14.2009)
Sekilas Tentang Cake PHP (03.11.2009)
Lebih dalam dengan operasi string bag.1 (02.16.2009)
Pengenalan dan Sejarah PHP (02.13.2009)



 
  ::| Events
July 2010  
Mg Sn Sl Rb Km Jm Sb
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
 

 
Bookmark and Share Page Ranking Tool