Advan – Sistem upload gambar adalah fitur yang banyak digunakan di berbagai aplikasi web. Baik itu untuk mengunggah foto profil, produk, atau konten lainnya, kemampuan untuk mengelola file gambar penting untuk meningkatkan fungsionalitas aplikasi web yang kamu buat. Dalam artikel ini, kamu akan belajar bagaimana cara membuat sistem upload gambar menggunakan PHP. Panduan ini cocok untuk pemula hingga level menengah yang ingin menambah fitur upload gambar ke dalam proyek mereka.
Pengenalan Dasar Sistem Upload Gambar
Sebelum kita masuk ke cara membuatnya, kamu perlu memahami komponen utama dari sistem upload gambar. PHP menyediakan beberapa fungsi built-in yang memudahkan proses ini. Misalnya, move_uploaded_file() adalah fungsi kunci yang digunakan untuk memindahkan file gambar dari direktori sementara ke lokasi penyimpanan permanen.
Selain itu, penting juga untuk memperhatikan keamanan, seperti memvalidasi jenis file yang diunggah dan ukuran file yang diperbolehkan. Sistem yang tidak aman bisa menjadi celah bagi serangan yang tidak diinginkan.
1. Membuat Formulir HTML untuk Upload Gambar
Langkah pertama dalam membuat sistem upload gambar adalah dengan membuat formulir HTML. Form ini memungkinkan pengguna untuk memilih gambar yang ingin mereka unggah.
- <form action=”upload.php” method=”post” enctype=”multipart/form-data”>
- Pilih gambar untuk diunggah:
<input type=”file” name=”fileToUpload” id=”fileToUpload”>
- <input type=”submit” value=”Upload Gambar” name=”submit”>
</form>
Form di atas memiliki input type file yang digunakan untuk memilih gambar dari komputer pengguna. Pastikan formulir memiliki atribut enctype=”multipart/form-data” agar file dapat diunggah.
2. Menangani Upload di PHP
Setelah formulir dibuat, langkah berikutnya adalah menangani upload file di PHP. File yang diunggah akan diproses oleh skrip upload.php.
- if (isset($_POST[“submit”])) {
$target_dir = “uploads/”;
- $target_file = $target_dir . basename($_FILES[“fileToUpload”][“name”]);
move_uploaded_file($_FILES[“fileToUpload”][“tmp_name”], $target_file);}
Fungsi move_uploaded_file() digunakan untuk memindahkan file yang telah diunggah dari folder sementara ke folder tujuan. Pastikan kamu membuat folder uploads sebelum menjalankan skrip ini.
3. Validasi Jenis File Gambar
Keamanan sangat penting dalam sistem upload. Kamu harus memastikan bahwa file yang diunggah adalah gambar. Cara paling umum adalah dengan memeriksa MIME type dari file yang diunggah.
- $imageFileType = strtolower(pathinfo($target_file, PATHINFO_EXTENSION));
if ($imageFileType != “jpg” &&
- $imageFileType != “png” &&
- $imageFileType != “jpeg”) {
echo “Maaf, hanya file JPG, JPEG, & PNG yang diperbolehkan.”;}
Dengan validasi ini, kamu bisa membatasi jenis file yang dapat diunggah. Ini membantu mencegah unggahan file berbahaya seperti skrip atau executable.
4. Mengatur Batas Ukuran File
Selain validasi jenis file, penting juga untuk membatasi ukuran file yang dapat diunggah. Kamu dapat melakukan ini dengan memeriksa ukuran file sebelum memproses unggahan.
- if ($_FILES[“fileToUpload”][“size”] > 500000) {
echo “Maaf, ukuran file terlalu besar.”;}
Dalam contoh ini, ukuran file dibatasi maksimal 500KB. Kamu bisa menyesuaikan batasan sesuai kebutuhan proyek kamu.
5. Menampilkan Gambar yang Telah Diunggah
Setelah file berhasil diunggah, kamu mungkin ingin menampilkannya kembali ke pengguna. Cara termudah adalah dengan membuat tautan langsung ke file yang telah diunggah.
- echo “<img src=’uploads/” . basename($_FILES[“fileToUpload”][“name”]) . “‘ alt=’Gambar’>”;
Dengan kode ini, gambar yang diunggah akan ditampilkan di halaman setelah proses upload berhasil.
Baca Juga: Apa Itu MVC dalam PHP dan Bagaimana Cara Mengimplementasikannya dengan Tepat?
Membuat sistem upload gambar dengan PHP cukup mudah jika kamu mengikuti langkah-langkah di atas. Penting untuk selalu menjaga keamanan, seperti memeriksa jenis dan ukuran file, agar sistem kamu tetap aman dari ancaman.
Untuk menyelesaikan proyek pengembangan web dengan lebih cepat dan efisien, kamu membutuhkan perangkat keras yang andal. Laptop Advan Workplus adalah pilihan tepat dengan prosesor Intel yang kuat, RAM 8GB, dan penyimpanan SSD yang cepat.
Laptop ini dirancang untuk menangani berbagai tugas, termasuk pengembangan web yang intensif. Dapatkan kinerja yang optimal dan fitur yang mendukung produktivitas kamu setiap hari.***
Editor: Andik Chefasa