Source Code PHP : Upload dan Hapus File Gambar

Bagi sahabat belajar pintar php, perlua anda ketahui bahwa untuk meng-upload file gambar (jpg, jpeg, pjpeg, png, gif) kita harus menggunakan fungsi php yang satu ini yaitu, move_uploaded_file (string path, string new_path), dan untuk menghapus file gambar yang telah di-upload tersebut digunakan fungsi unlink (string filename).  Dimana file gambar akan disimpan di direktori/folder ‘images’ dan data gambar (file_name, ukuran, direktori dan deskripsi gambar) akan disimpan di tabel ‘file_gambar’. 

Untuk membuat tabel tempat menyimpan informasi gambar yang akan di upload, copy dan paste sintak SQL berikut di phpMyAdmin Run SQL query/queries on database database_ku.
CREATE TABLE `database_ku`.`file_gambar` (
`file_id` INT( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`file_name` VARCHAR( 50 ) NOT NULL ,
`ukuran` INT( 10 ) NOT NULL ,
`direktori` VARCHAR( 50 ) NOT NULL ,
`deskripsi` TEXT NOT NULL
) ENGINE = MYISAM
Ini sedikit potongan skripnya :

Form upload gambar:

<form action="upload-hapus.php?act=upload" method="post" enctype="multipart/form-data">
<p><input name="fgambar" type="file" id="fgambar" /></p>
<p>Tipe file yang diperbolehkan jpg, jpeg, pjpeg, png atau gif.</p>
<p>Deskripsi:</p>
<p><textarea name="deskripsi" cols="38" rows="5" id="deskripsi">
</textarea></p>
<input type="hidden" name="direktori" id="direktori" value="images" />
<p><input name="upload" type="submit" value="Upload" id="upload" /></p>
</form>
Untuk menampilkan gambar yang telah di upload:
<?php
//tampilkan gambar tersedia
$SQL ="SELECT * FROM file_gambar";
$qryGambar =@mysql_query($SQL);
$no=0;
while($row =@mysql_fetch_array($qryGambar)):
$no++;
$conf ="Anda yakin akan menghapus gambar ".$row['file_name'];
echo '<p>No : '.$no.'</p>';
echo '<p>Nama : '.$row['file_name'].' | <a href="upload-hapus.php?act=hapus&id='.$row['file_id'].'" onclick="return confirm(\'Anda yakin akan menghapus gambar '.$row['file_name'].'\');">Hapus</a></p>';
echo '<p>Ukuran : '.$row['ukuran'].' bytes</p>';
echo '<p><img src="'.$row['direktori'].'/'.$row['file_name'].'" /></p>';
echo '<p>Deskripsi : '.$row['deskripsi'].'</p><hr />';
endwhile;
if($no==0){
echo "<p>Gambar belum tersedia.</p>";
}
?>
Skrip untuk meng-upload gambar:
<?php
include "koneksi.php"; //koneksi dengan database
if($_GET['act']=='upload'):
$tipe =$_FILES['fgambar']['type'];
if( $tipe != "image/jpg" AND
$tipe != "image/jpeg" AND
$tipe != "image/pjpeg" AND
$tipe != "image/png" AND
$tipe != "image/gif"){
echo '<p><b>Upload Gagal</b></p>';
echo '<p>Tipe file yang diperbolehkan jpg, jpeg, pjpeg, png atau gif.</p>';
echo '<p><a href="index.php">ULANGI</p></p>';
}else{
$file_name =$_FILES['fgambar']['name'];
$ukuran =$_FILES['fgambar']['size'];
$direktori =$_POST['direktori'];
$deskripsi =$_POST['deskripsi'];
//Cek gambar
$SQL ="SELECT file_name FROM file_gambar WHERE file_name='$file_name'";
$qGambar =@mysql_query($SQL);
if(count(@mysql_fetch_array($qGambar)) > 1){
echo '<p><b>Upload Gagal</b></p>';
echo '<p>Gambar telah tersedia</p>';
echo '<p><a href="index.php">KEMBALI</p></p>';
}else{
//upload gambar
move_uploaded_file($_FILES['fgambar']['tmp_name'],$direktori.'/'.$file_name);
//simpan data gambar
@mysql_query("INSERT INTO file_gambar"
SET file_name ='$file_name',
ukuran ='$ukuran',
direktori ='$direktori',
deskripsi ='$deskripsi'");"
header('location:index.php');
}
}
endif;
?>
Skrip untuk meng-hapus gambar:
<?php
if($_GET['act']=='hapus'):
//pilih gambar
$id =$_GET['id'];
$SQL ="SELECT * FROM file_gambar WHERE file_id='$id'";
$qGambar =@mysql_query($SQL);
$row =@mysql_fetch_array($qGambar);
//hapus gambar
if(file_exists($row['direktori'].'/'.$row['file_name']))
unlink($row['direktori'].'/'.$row['file_name']);
//hapus data gambar
@mysql_query("DELETE FROM file_gambar WHERE file_id='$id'");
header('location:index.php');
endif;
?>
Belajar pintar php

Jika gambar di hapus akan muncul pesan konfirmasi seperti ini:
konfirmasi-hapus

untuk skrip lengkapnya dapat anda download di  sini.

Sekian source code upload hapus gambar php nya , selamat mencoba buat sahabat belajar pintar php yang cukup setia sampai saat ini.

3 Komentar

  1. bang klau bisa scriptnya jgn di upload di ziddu, karena kgk bisa di download pasti nanti bakal muncul begini -_-

    "Situs yang akan dibuka berisi penipuan
    Penyerang di downloads.ziddu.com dapat mengelabui Anda agar melakukan hal berbahaya seperti memasang perangkat lunak atau mengungkap informasi pribadi Anda (misalnya, sandi, nomor telepon, atau kartu kredit)."

    Thanks -,-

    BalasHapus
  2. gan itu link kenapa tidak bisa di download ye????

    BalasHapus
  3. Terimakasih.. tulisannya sangat bermanfaat..
    My blog
    My Campus

    BalasHapus
Lebih baru Lebih lama