UP
    Latest News

Cara Membuat Upload File Lebih dari Satu File dengan PHP

Halo sahabat Belajar Pintar PHP yang setia, pada posting saya sebelumnya saya sudah pernah membagikan kepada anda tentang cara upload file maupun gambar pada php, dan sekarang saya juga membahas hal yang sama tetapi dengan versi yang berbeda serta ada tambahan dari postingan saya sebelumnya. Oke langsung saja kita bahas satu persatu dibawah ini.

1. Upload Dengan Metode POST

Untuk melakukan upload file dari komputer kita/client ke komputer server, pertama kita buat form HTML untuk upload file.
Langkah pertama yang perlu anda buat adalah sebuah halaman PHP dengan nama "Halaman1.PHP" , lalu copy-kan seluruh script dibawah ini kedalamnya.
<form enctype="multipart/form-data" action="upload.php" method="POST">
    <input type="hidden" name="MAX_FILE_SIZE" value="3000000" />
    Send this file: <input name="userfile" type="file" />
    <input type="submit" value="Send File" />
</form>
MAX_FILE_SIZE berfungsi untuk mengatur ukuran maksimal yang diterima PHP (dalam bytes)
Sekarang kita buat kode untuk upload file tersebut dengan membuat satu halaman PHP dengan nama "upload.php" lalu copy-kan seluruh code php dibawah ini kedalamnya.

upload.php

<?php
$uploaddir = './';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
 
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    echo "File berhasil diupload.\n";
} else {
    echo "gagal!\n";
}
?>
Jika sudah selesai coba jalankan "halaman1.PHP" tadi pad browser anda dan cobalah untuk meng-upload sebuah file.

Hal yang perlu anda ketahui :
Untuk melakukan upload kita menggunakan fungsi move_uploaded_file()
Di server, untuk menangani variabel dari input bertipe file adalah $_FILES, yang berupa array, informasi yang didapat dari $_FILES adalah :

$_FILES['userfile']['name']
Nama asli file dari komputer client.

$_FILES['userfile']['type']
Informasi tipe file, contoh "image/gif".

$_FILES['userfile']['size']
Ukuran file yang diupload (dalam bytes).

$_FILES['userfile']['tmp_name']
Nama file sementara dari file yang diupload yang diletakkan di server

$_FILES['userfile']['error']
Error kode yang berhubungan dengan penanganan file

2. Multiple Upload File

Sekarang kita lihat contoh upload file lebih dari satu sekaligus, untuk itu kita harus membuat nama input form bertipe array, contoh :
Buat sebuah halaman PHP dengan nama "halaman2.php" , lalu copy-kan script php dibawah ini kedalamnya.

halaman2.php
<form action="uploadfile.php" method="post" enctype="multipart/form-data">
<p>File yang diupload:<br>
<input type="file" name="fileku[]" /><br>
<input type="file" name="fileku[]" /><br>
<input type="file" name="fileku[]" /><br>
<input type="file" name="fileku[]" /><br>
<input type="file" name="fileku[]" /><br>
<input type="file" name="fileku[]" /><br>
<input type="file" name="fileku[]" /><br>
<input type="submit" value="Send" />
</p>
</form>
Jika sudah selesai, mari kita buat kode untuk upload filenya, caranya buat lagi sebauh halaman php dengan nama "uploadfile.php" dan copy-kan kode php dibawah ini kedalamnya.
uploadfile.php
<?php
$direktori = ".";
foreach ($_FILES["fileku"]["error"] as $key => $error) {
    if ($error == UPLOAD_ERR_OK) {
        $tmp_name = $_FILES["fileku"]["tmp_name"][$key];
        $name = $_FILES["fileku"]["name"][$key];
        move_uploaded_file($tmp_name, $direktori."/".$name);
        echo "File $name berhasil diupload <br>";
    }
}
?>

Jika sudah selesai, coba jalankan "halaman2.php" tadi pada browser dan coba untuk mengupload file lebih banyak.
Oke, sekian dulu untuk moment ini, saya harap dengan ilmu yang sedikit ini bisa menjadi modal awal buat anda para calon programer dunia, dan jangan lupa ya share dan komentarnya, Terimakasih.

No comments:

Post a Comment