Java, Android, MySQL, PHP, HTML

Insert Image/Gambar Ke Database MySQL Menggunakan PHP PDO

Kali ini saya akan membagikan tutorial PHP tentang bagaimana cara meng input image ke dalam database MySQL.

Banyak keluhan yang terjadi pada proses ini, tipe data blob sering kali menjadi hambatan bagi para pemula yang belajar PHP untuk belajar melakukan input gambar ke database.

Sedikit trick yang dapat saya bagikan bagi kalian yang sedang belajar adalah seperti ini :
  • buatkan directory untuk menyimpan file gambar di project PHP yang kalian buat.
  • Gunakan tipe data varchar untuk menyimpan gambar. Kita hanya akan menyimpan path image dari directory yang kita buat di project nya saja.
Penampakannya seperti berikut ini :


Pada gambar diatas, saya membuat sebuah directory bernama images. Directory tersebut saya gunakan untuk menyimpan file gambar yang telah di upload.

Lalu di database tidak ada imagenya dong?

Di database kita hanya akan menyimpan path si image saja, jadi kalian tidak akan dibuat susah oleh tipe data blob. Disamping itu keunggulan menggunakan cara ini adalah hemat memory pada database kalian.

Berikut ini penampakan pada database berdasarkan gambar-gambar yang sudah di upload dan disimpan pada directory images.


Yang saya kotakin merah itu adalah nama-nama path dari si image. Perhatikan baik-baik pathnya :

images/karna1.jpg

images menandakan bahwa gambar tersebut berada pada sebuat folder bernama images. Sedangkan karna1.jpg adalah nama si gambar yang tersimpan pada folder images. (Coba aja sesuaikan gambar pertama dan kedua, lihat file karna1.jpg)

Tertarik dengan cara saya diatas? Jika iya, mari kita mulai langkah-langkahnya dibawah ini :

Struktur Database


Kalian tidak perlu lagi membuat tipe data blob untuk image, melaikan menggunakan tipe data varchar. Untuk lebih jelasnya lihat gambar berikut ini :


id, tipe datanya int, primary key dan Auto Increment
image, tipe datanya adalah varchar
 

Form Input


Form input dibuat dengan sangat sederhana, beri nama pada file ini sebagai FormInsertImage.html. Kemudian ketikan kode dibawah ini :

Perhatkan dikode diatas ada sebuah attribute name dengan nama = myimage. Attribute itu akan digunakan di file php untuk mengambil gambar yang telah di browse melalui form html.

Insert Ke Database


Pada bagian ini akan terasa panjang kodingannya, karena didalamnya terdapat validasi untuk tipe-tipe gambar yang boleh di input (JPG, jpg, png, PNG, dll), selain itu juga terdapat validasi untuk membatasi ukuran gambar yang akan di upload.

File ini di beri nama InsertImageFromWeb.php. Silakan ketikan kode dibawah ini (ketik dan pahami) :

Perhatikan :
Dikode diatas, jika kalian cari-cari akan ketemu sebuah attribute myimage.

Dari mana sih attribute myimage itu didapat kok tiba-tiba ada di file php sedangkan di database tidak ada?

Jawabannya, didapat dari attribute pada form input gambar. Attribute namenya diberi nama myimage.

Fungsinya apa sih myimage dipakai di file php?

Tujuannya agar si file php mengetahui adanya inputan berupa gambar yang akan disimpan ke database, singkatnya seperti itu.

Si file php kan dibuat khusus untuk memasukan image ke database,  nah imagenya kita arahkan ke form inputan tadi. Cara agar si php dapat mengakses form input image tersebut maka untuk itulah kita gunakan attribute myimage.

Display gambar


Tidak percaya gambarnya sudah di input? File ini akan membuktikan bahwa walaupun hanya nama pathnya saja yang ada di database, namun imagenya akan tetap bisa di tampilkan di webpage. File ini diberi nama sebagai DisplayImageFromDatabase.php. Ketikan kode dibawah ini :

Jika di jalankan, maka hasilnya akan seperti berikut ini :

Perhatikan :

Mungkin ada yang bertanya, itu bagaimana caranya menampilkan path dan sekaligus nama imagenya?

Begini, lihat kodingan-kodingan didalam foreach :

Jika kalian HANYA ingin menampilkan pathnya saja, kalian bisa gunakan kode ini :

echo $data['image'];

Namun jika kalian ingin menampilkan gambar berdasarkan path yang tersimpan didatabase, maka kalian harus simpan $data['image'] didalam tagline image (<img src .... />), lihat kode dibawah ini :

<img src="<?php echo $data['image']?>" width="20%">

Oke sekian tutorial kali ini tentang bagaimana cara input image/gambar ke database dengan PHP. Semoga bermanfaat.
Tag : image, php
0 Comment(s) for "Insert Image/Gambar Ke Database MySQL Menggunakan PHP PDO"

Please post a polite comment and do not post a spam

Back To Top
close