Berikut code untuk input file, simpan nama file dengan nama "lampiranfile.php"
<form action="upload.php" method="post" enctype="multipart/form-data">
<label>Pilih file gambar:</label>
<input type="file" name="image">
<input type="submit" name="submit" value="Upload">
</form>
Kemudian, buat file dengan nama "upload.php"
Masukkan code dibawah ini =
<?php
/*
* fungsi untuk mengompres ukuran file gambar dan
* mengupload ke server
*/
function compressImage($source, $destination, $quality) {
// mendapatkan info gambar
$imgInfo = getimagesize($source);
$mime = $imgInfo['mime'];
// membuat gambar baru dari file sumber
switch($mime){
case 'image/jpeg':
$image = imagecreatefromjpeg($source);
break;
case 'image/png':
$image = imagecreatefrompng($source);
break;
case 'image/gif':
$image = imagecreatefromgif($source);
break;
default:
$image = imagecreatefromjpeg($source);
}
// menyimpan gambar
imagejpeg($image, $destination, $quality);
// mengembalikan gambar yang dikompres
return $destination;
}
// path untuk file yang diupload
$uploadPath = "uploads/";
// jika form upload disubmit
$status = $statusMsg = '';
if(isset($_POST["submit"])){
$status = 'error';
if(!empty($_FILES["image"]["name"])) {
// info file
$fileName = basename($_FILES["image"]["name"]);
$imageUploadPath = $uploadPath . $fileName;
$fileType = pathinfo($imageUploadPath, PATHINFO_EXTENSION);
// hanya membolehkan format file tertentu
$allowTypes = array('jpg','png','jpeg');
if(in_array($fileType, $allowTypes)){
// sumber gambar sementara
$imageTemp = $_FILES["image"]["tmp_name"]; // mengompres ukuran gambar 25% dan upload gambar
$compressedImage = compressImage($imageTemp, $imageUploadPath, 75);
if($compressedImage){
$status = 'Sukses';
$statusMsg = "Gambar berhasil dikompres.";
}else{
$statusMsg = "Kompres gambar gagal!";
}
}else{
$statusMsg = 'Maaf, hanya file JPG, JPEG, dan PNG yang dibolehkan untuk diupload.';
}
}else{
$statusMsg = 'Silakan pilih file gambar untuk diupload.';
}
}
// menampilkan status
echo $statusMsg;
?>
Silakan untuk mencoba
Comments
Post a Comment