Cara Mengupload File Di PHP
2.1.1
Pengertian PHP
File Upload
File upload merupakan salah satu dari fitur lanjutan
PHP yang bertujuan untuk mengizinkan sebuah halaman untuk meng-upload sebuah
file ke server. File yang di upload dapat berupa gambar, teks, video, suara,
dan lain-lain.
2.1.2
Program PHP File
Upload
1. Membuat
form utama HTML
Langkah
pertama untuk meng-upload file adalah dengan membuat sebuah form utama HTML
yang mengizinkan pengguna untuk memilih file yang ingin di upload. Kode dibawah
merupakan contoh untuk file gambar.
<!DOCTYPE
html>
<html>
<body>
<form
action="upload.php" method="post" enctype="multipart/form-data">
Select image to upload:
<input type="file"
name="fileToUpload" id="fileToUpload">
<input type="submit"
value="Upload Image" name="submit">
</form>
</body>
</html>
|
a. Pastikan
bahwa form utama menggunakan method post
b. Form harus
memuat atribut enctype=”multipart/form-data”. Hal ini berfungsi untuk
menspesifikasikan tipe konten yang digunakan ketika menyerahkan(men-submit)
form.
2. Membuat
skrip PHP File Upload
Tanpa
dua hal diatas, maka upload file tidak akan bisa dilakukan. Kemudian, form
diatas akan mengirim data ke sebuah file php yang akan dinamakan upload.php.
Berikut adalah kode untuk file upload.php.
<?php
$target_dir
= "uploads/";
$target_file
= $target_dir .
basename($_FILES["fileToUpload"]["name"]);
$uploadOk
= 1;
$imageFileType
= strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
//
Check if image file is a actual image or fake image
if(isset($_POST["submit"]))
{
$check =
getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check !== false) {
echo "File is an image - "
. $check["mime"] . ".";
$uploadOk = 1;
} else {
echo "File is not an
image.";
$uploadOk = 0;
}
}
?>
|
Setelah membuat file
upload.php diatas, maka kita harus membuat sebuah direktori yang diberi nama
uploads yang berlokasi dimana file upload.php dibuat. Direktori tersebut akan
menampung file yang telah di-upload
3. Membatasi
ukuran file
Kita
dapat membatasi ukuran sebuah file yang akan di-upload, hal tersebut dapat
dilakukan dengan menggunakan kode seperti dibawah ini.
//
Check file size
if
($_FILES["fileToUpload"]["size"] > 500000) {
echo "Sorry, your file is too
large.";
$uploadOk = 0;
}
|
Jika
file yang diupload memiliki ukuran lebih dari 500kb, maka akan muncul sebuah
pesan error yang memberi tahu bahwa ukuran file yang diupload melebih batas
ukuran file
4. Membatasi
tipe file
Selain
membatasi ukuran file, kita juga dapat membatasi tipe file yang ingin
di-upload. Hal tersebut dapat dilakukan dengan menggunakan kode seperti dibawah
ini.
//
Allow certain file formats
if($imageFileType
!= "jpg" && $imageFileType != "png" &&
$imageFileType != "jpeg"
&&
$imageFileType != "gif" ) {
echo "Sorry, only JPG, JPEG, PNG
& GIF files are allowed.";
$uploadOk = 0;
}
|
Kode
diatas berarti bahwa kita hanya dapat meng-upload file gambar dengan format
jpg, jpeg, png, dan gif. Kita tidak dapat meng-upload file gambar dengan format
gambar yang lain. Jika kita ingin HTML dapat meng-upload file gambar dengan
format yang lain, maka kita harus menambahkan tipe file gambar yang diinginkan
pada bagian pengkondisian.
5. Skrip
PHP File Upload Lengkap
Setelah
kita mengatur ukuran file dan tipe file, maka kita dapat membuat skrip PHP file
upload yang memuat dua hal tersebut pada file upload.php.
<?php
$target_dir =
"uploads/";
$target_file = $target_dir
. basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType =
strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
// Check if image file is
a actual image or fake image
if(isset($_POST["submit"]))
{
$check =
getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check !== false) {
echo "File is an image - "
. $check["mime"] . ".";
$uploadOk = 1;
} else {
echo "File is not an
image.";
$uploadOk = 0;
}
}
// Check if file already
exists
if
(file_exists($target_file)) {
echo "Sorry, file already
exists.";
$uploadOk = 0;
}
// Check file size
if
($_FILES["fileToUpload"]["size"] > 500000) {
echo "Sorry, your file is too
large.";
$uploadOk = 0;
}
// Allow certain file
formats
if($imageFileType !=
"jpg" && $imageFileType != "png" && $imageFileType
!= "jpeg"
&& $imageFileType
!= "gif" ) {
echo "Sorry, only JPG, JPEG, PNG
& GIF files are allowed.";
$uploadOk = 0;
}
// Check if $uploadOk is
set to 0 by an error
if ($uploadOk == 0) {
echo "Sorry, your file was not
uploaded.";
// if everything is ok,
try to upload file
} else {
if
(move_uploaded_file($_FILES["fileToUpload"]["tmp_name"],
$target_file)) {
echo "The file ". basename(
$_FILES["fileToUpload"]["name"]). " has been
uploaded.";
} else {
echo "Sorry, there was an error
uploading your file.";
}
}
?>
|
6. Upload
File
a. Pertama klik file
main.html untuk membuka form upload kemudian pilih browse untuk memilih gambar.
b. Pilih
gambar yang ingin di upload.
c. Jika
gambar telah dipilih, klik button upload image untuk meng-upload gambar.
d. Jika
file berhasil di upload, maka akan muncul tulisan seperti dibawah. Cek
folder uploads untuk memastikan bahwa file berhasil di upload. Kita juga dapat
memeriksa file yang telah di upload pada localhost atau server.
cara upload disini sangat penting untuk membuat suatu aplikasi karena kita dapat menyisipkan file apa aja kedalam aplikasi kita jika ingin tutorial yang lainnya silahkan kunjungi www.punyacara.com semoga bermanfaat untuk kita semua. silahkan subscribe youtube kami Bonifasius Tandi .
EmoticonEmoticon