Header Ads

  • Breaking News

    Memahami Konsep Pengolahan File di PHP


    Pemrograman Web 2 - Bagaimana cara membuat fitur uplaoad file di PHP? Pertanyaan ini cukup sering ditanyakan. Upload file merupakan kegiatan pengiriman file dari client (pengunjung web) ke server.

    Kode PHP untuk Upload File

    Silahkan buat dua file:

    index.html untuk membuat form upload

    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:

    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.

    Sekarang mari kita coba upload file.

    Jika berhasil, maka akan tampil seperti ini:

    Untuk memastikan, coba periksa direktori terupload:

    Tidak ada komentar

    Post Bottom Ad