Bagaimana mengkompresi image file sebelum diupload ke server? syntacknya
yurike25
Yang kita tahu adalah max upload file yang boleh diupload ke server adalah 2 MB.Kita sebenernya bisa merubah menjadi 20 MB misalnya, kalau saja memang kita sendiri yang punya servernya yaitu dengan merubah file php.ini yang ada di webserver. Nah, yang jadi masalah kalau kita hanya “menumpang” file-file kita pada server orang lain, so kita tidak punya akses untuk merubah file php.ini yang ada di webserver. Agar pembahasan ini tidak terlalu rumit, saya akan mencontohkan satu buah file gambar yang akan dikompresi sebelum akhirnya diupload pada server. Oke, silakan buat folder “latihan” didalam “C:\xampp\htdocs\”. Didalam folder “latihan” terdapat file “upload.php” dan subfolder “images”. Silakan buka file “upload.php” lalu ketikkan baris program berikut ini: 1234567891011121314151617181920212223242526272829<?php//form upload file gambarecho "<form method='post' action='' enctype='multipart/form-data'><label for='pilih_file'>Pilih File</label><input type='file' name='gambar'><input type='submit' name='upload' value='Upload'></form>"; //proses kompresi file dan uploadif (isset($_POST['upload'])){ $tmp_name = $_FILES['gambar']['tmp_name']; $name = $_FILES['gambar']['name']; $size = $_FILES['gambar']['size']; $location = "images/". $name; //cek ukuran //jika lebih dari 2 MB, turunkan kualitas menjadi 75% if ($size > 1024 * 1024) { imagejpeg(imagecreatefromjpeg($tmp_name, $tmp_name, 75)); } //upload file $upload = move_uploaded_file($tmp_name, $location); if ($upload) echo "Berhasil upload file"; else echo "Gagal upload file";}?>
0 votes Thanks 0
sindukumala
maksud saya compresi dilakukan disisi client
Agar pembahasan ini tidak terlalu rumit, saya akan mencontohkan satu buah file gambar yang akan dikompresi sebelum akhirnya diupload pada server. Oke, silakan buat folder “latihan” didalam “C:\xampp\htdocs\”. Didalam folder “latihan” terdapat file “upload.php” dan subfolder “images”. Silakan buka file “upload.php” lalu ketikkan baris program berikut ini: 1234567891011121314151617181920212223242526272829<?php//form upload file gambarecho "<form method='post' action='' enctype='multipart/form-data'><label for='pilih_file'>Pilih File</label><input type='file' name='gambar'><input type='submit' name='upload' value='Upload'></form>"; //proses kompresi file dan uploadif (isset($_POST['upload'])){ $tmp_name = $_FILES['gambar']['tmp_name']; $name = $_FILES['gambar']['name']; $size = $_FILES['gambar']['size']; $location = "images/". $name; //cek ukuran //jika lebih dari 2 MB, turunkan kualitas menjadi 75% if ($size > 1024 * 1024) { imagejpeg(imagecreatefromjpeg($tmp_name, $tmp_name, 75)); } //upload file $upload = move_uploaded_file($tmp_name, $location); if ($upload) echo "Berhasil upload file"; else echo "Gagal upload file";}?>