Siang blogger, pada kesempatan kali ini saya akan membahas bagaimana cara upload gambar di php dan menyimpannya di database. Pada dasarnya teknik meyimpan gambar di PHP ada dua cara yaitu, Cara pertama dengan menyimpan objek gambarnya kedalam database dan cara kedua adalah menyimpan objek gambar dalam folder dan menyimpan nama filenya didalam database mysql. Masing masing cara punya kelemahan dan kelebihan.
- Cara pertama kelebihannya adalah gambar disimpan langsung di database, kelemahannya performa database semakin lama semakin lambat karena semakin besarnya file gambar yang di simpan. kemudian sulit untuk membackup gambar karena gambar tersimpan dalam format data base.
- Cara kedua kelebihannya adalah memudahkan kita saat ingin membackup gambar karena gambar tersimpan di dalam folder, dan pembacaan file lebihcepat karena tersimpan di dalam folder.
Pada postingan kali ini saya akan membahas cara yang ke dua, pertama buatlah sebuah database yang akan digunakan untuk meyimpan gambar di databese. lalu buatlah sebuah file html seperti dibawah ini.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<tittle>Upload Gambar di PHP<tittle>
</head>
<body>
<form action="upload.php" method="post" enctype="multipart/form-data" name="form1" id="form1">
<p>Judul Gambar :
<input name="judul_gambar" type="text" id="judul_gambar" size="30" maxlength="30" />
</p>
<p>
File Gambar
:
<input name="nama_file" type="file" id="nama_file" size="30" />
</p>
<p>
<input type="submit" name="btnSimpan" id="btnSimpan" value="Simpan" />
</p>
</form>
</body>
</html>
- Copas kode tersebut dan simpan dengan nama file kirim-gambar.html.
- kemudian buatlah sebuah file php untuk mengupload file gambar ke folder dan menyimpan namafile di database seperti contoh dibawah ini.
<?php
$namafolder="gambar/"; //tempat menyimpan file
$con=mysql_connect("localhost","root","") or die("Gagal");
mysql_select_db("db_coba") or die("Gagal");
if (!empty($_FILES["nama_file"]["tmp_name"]))
{
$jenis_gambar=$_FILES['nama_file']['type'];
$judul_gambar=$_POST['judul_gambar'];
if($jenis_gambar=="image/jpeg" || $jenis_gambar=="image/jpg" || $jenis_gambar=="image/gif" || $jenis_gambar=="image/x-png")
{
$gambar = $namafolder . basename($_FILES['nama_file']['name']);
if (move_uploaded_file($_FILES['nama_file']['tmp_name'], $gambar)) {
$sql="insert into tb_gambar(judul_gambar,nama_file) values ('$judul_gambar','$gambar')";
$res=mysql_query($sql) or die (mysql_error());
echo "Gambar berhasil dikirim ".$gambar;
echo "<p>Judul Gambar : $judul_gambar</p>";
echo "<p><img src=\"$gambar\" width=\"200\"/></p>";
} else {
echo "<p>Gambar gagal dikirim</p>";
}
} else {
echo "Jenis gambar yang anda kirim salah. Harus .jpg .gif .png";
}
} else {
echo "Anda belum memilih gambar";
}
?>
- Simpan file tersebut dengan nama upload.php
Selesai deh, catatan hanya file berextensi png, jpg dan gif, untuk sorcecode lengkap silahkan download link berikut http://www.4shared.com.
Selamat Mencoba