fungsi upload gambar di PHP

salam bloger semua,

kali ini saya akan mencoba untuk menjelaskan cara membuat fungsi upload file atau gambar. algoritmanya seperti berikut :

  • mengambil file yang di upload dan di taruh ke directory server
  • menyimpan nama file ke database
  • untuk menampilkan kembali, pakai <img src:”nama directory tempat simpan gambar/ nama gambar di database”>

jangan lupa membuat 1 database dengan nama coba dan buat 1 tabel dengan field id_gambar dan nama_gambar.

pertama buat 1 file dengan nama index.php

<?
include ‘connect_db.php’;
if(isset($_POST[‘upload’]))
{
function uploadFoto($fileFoto)
{
$foto = $_FILES[“gambar”][‘name’];
$folder = ‘images/’;
$fileTujuan = $folder.$_FILES[‘gambar’][‘name’];
if (move_uploaded_file($_FILES[‘gambar’][‘tmp_name’], $fileTujuan))
{
return $foto;
}
else
{
return “”;
}
}
$isiFoto=$_POST[‘gambar’];
$tampilFoto = uploadFoto($isiFoto);
if($tampilFoto!=””)
{
$cek_id_gambar=mysql_query(“select * from gambar order by id_gambar desc”);
if(mysql_num_rows($cek_id_gambar)==0)
{
$id_gambar=’10001′;
}
else
{
$row_cek_id_gambar=mysql_fetch_array($cek_id_gambar);
$id_gambar=$row_cek_id_gambar[‘id_gambar’]+1;
}
$insert=mysql_query(“insert into gambar (id_gambar, nama_gambar) values(‘”.$id_gambar.”‘,'”.$tampilFoto.”‘) “);
if($insert==true)
{
$pesan=’Upload Gambar Berhasil’;
}
}
else
{
$pesan==’Upload Gambar Gagal’;
}
}
?>
<html>
<head>
</head>
<body>
<table>
<tr>
<td>
<form action=”#” method=”post” name=”upload” enctype=”multipart/form-data”>
<input type=”file” name=”gambar” />
<input type=”submit” name=”upload” value=”Upload” />
</form>
</td>
</tr>
<tr>
<td>
<? echo $pesan?>
</td>
</tr>
</table>
</body>
</html>

kedua buat 1 file dengan nama connect_db.php

<?php
$conn = mysql_connect(“localhost”,”root”,””);
mysql_select_db(“coba”);
?>

penjelasan :

hal yang paling penting dalam upload file adalah :

1. fungsi dibawah ini adalah fungsi dimana begitu tombol submit di tekan, maka nama file akan di lempar ke directory server. code yang ada dibawah ini untuk menarik gambar dari komputer anda dan dipindahkan ke directory server.

<?php
function uploadFoto($fileFoto)
{
$foto = $_FILES[“gambar”][‘name’];
$folder = ‘images/’;
$fileTujuan = $folder.$_FILES[‘gambar’][‘name’];
if (move_uploaded_file($_FILES[‘gambar’][‘tmp_name’], $fileTujuan))
{
return $foto;
}
else
{
return “”;
}
}
$isiFoto=$_POST[‘gambar’];
$tampilFoto = uploadFoto($isiFoto);
?>

2.  pada form jangan lupa ditambahkan enctype=”multipart/form-data. karena jika tidak ada enctype seperti ini, maka file gambar yang anda masukkan tidak dapat di masukkan ke directory server.

lihat code dibawah untuk lebih jelas :

<form action=”#” method=”post” name=”upload” enctype=”multipart/form-data”>
<input type=”file” name=”gambar” />
<input type=”submit” name=”upload” value=”Upload” />
</form>

demikian penjelasan dari saya. jika ada yang tidak dimengerti, anda dapat bertanya kepada saya. saya akan membantu sebisa mungkin. semoga berguna bagi anda.

  1. ok nech, usul bloq utk upload file di blog ada ga yach ? bagi ilmu y. Merci🙂

    • wah… ada mbak lala. jadi malu….
      kalo upload di wordpress sudah ada fitur tersendiri kok. kan kemaren dah diajarin😛

    • rafel
    • October 9th, 2013

    mas bisa diperjelas lagi ga tentang file gambar itu? kenapa hrs ada temporary name dan name nya untuk suatu gambar

    • santi suryani
    • May 23rd, 2014

    klo ke klik upload dengan tidak di sengaja gmn?

    • jika ke klik maka file yg diupload itu berupa data kosong.
      untuk mengantisipasi hal tersebut, bisa menggunakan regex. jika file kosong maka jangan dilakukan proses upload

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: