Materi Sabtu 12 Januari 2012
MEMBUAT FORM FILE UPLOAD SEDERHANA
Berikut ini contoh sebuah form html untuk memungkinkan kita dalam mengupload sebuah file
(copy paste ke notepad, lalu jalankan)
<html>
<body>
<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<br />
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>
Perhatikan hal berikut tentang form HTML di atas:
Atribut enctype dari tag <form> yang menentukan content-typeuntuk digunakan ketika mengirimkan formulir. "multipart / form-data" digunakan ketika membentuk memerlukan data biner,seperti isi dari sebuah file, yang akan diupload
Jenis = "file" atribut dari tag <input> menentukan bahwa inputharus diproses sebagai file. Sebagai contoh, bila dilihat dalambrowser, akan ada isi-tombol di sebelah field input
Catatan: Mengizinkan pengguna untuk meng-upload file adalah resiko keamanan besar. Hanya mengizinkan pengguna terpercaya untuk melakukan upload file.
1. Membuat form Upload.php
File “upload.php” berisi kode untuk meng-upload file:
<?php
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
?>
Dengan menggunakan PHP global $ _FILES array yang Anda dapat meng-upload file dari komputer klien ke server remote.
Parameter pertama adalah nama form input dan indeks kedua bisa baik "nama", "tipe", "ukuran", "tmp_name" atau "kesalahan". Seperti ini:
$ _FILES ["File"] ["nama"] - nama dari file upload
$ _FILES ["File"] ["type"] - jenis dari file upload
$ _FILES ["File"] ["size"] - ukuran dalam bytes dari file upload
$ _FILES ["File"] ["tmp_name"] - nama salinan sementara darifile yang tersimpan di server
$ _FILES ["File"] ["error"] - kode kesalahan yang dihasilkan dariupload file
Ini adalah cara yang sangat sederhana dari file upload. Untuk alasan keamanan, Anda harus menambahkan pembatasan pada user yang diperbolehkan untuk upload.
2. Pembatasan Upload
Dalam script ini kita menambahkan beberapa pembatasan ke fileupload. Pengguna hanya dapat meng-upload file jpeg atau gif dan ukuran file harus dibawah 20 kb..:
<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
}
else
{
echo "Invalid file";
}
?>
Catatan: Untuk IE untuk mengenali file jpg jenisnya harus pjpeg,untuk FireFox harus jpeg.
3. Menyimpan File Uploaded
Contoh di atas membuat copy sementara dari file upload di PHPfolder temp di server.
File sementara yang disalin hilang ketika script berakhir. Untuk menyimpan file upload kita perlu menyalinnya ke lokasi yang berbeda:
<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}
}
}
else
{
echo "Invalid file";
}
?>
Script di atas memeriksa apakah file sudah ada, jika tidak, itu salinan file ke folder tertentu.
Catatan: Contoh ini menyimpan file ke folder baru yang disebut"upload"
soal :
buatkan form upload dengan kapasitas upload lebih besar...!!!
(file upload.php nya seperti apa?)
Label:
tulisan

Tidak ada komentar:
Posting Komentar
Silahkan kirim komentar Anda dengan baik dan benar sesuai Ejaan Yang Disempurnakan (EYD). Sekian dari saya yang ganteng dan imut ini, jika ada salahnya mohon dimaafkan dan jika ingin mengkopi tulisan di blog ini silahkan mencantumkan link blog saya. Trims