Selamat Datang Di Blog Saya

Kamis, 06 Oktober 2011

Skrip PHP untuk Upload dan Hapus File Gambar



Untuk meng-upload file gambar (jpg, jpeg, pjpeg, png, gif) kita gunakan fungsi move_uploaded_file(string path, string new_path), dan untuk menghapus file gambar yang telah di-upload tersebut digunakan fungsi unlink(string filename).  Nantinya file gambar akan disimpan di direktori/folder ‘images’ dan data gambar (file_name, ukuran, direktori dan deskripsi gambar) akan disimpan di tabel ‘file_gambar’. Cara membuat folder dengan skrip PHP dapat anda lihat di ‘Membuat Direktori atau Folder Baru di Server Menggunakan PHP’…
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
Berikut potongan skripnya:


Form upload gambar:

"upload-hapus.php?act=upload" method="post" enctype="multipart/form-data">

 name="fgambar" type="file" id="fgambar" />


Tipe file yang diperbolehkan jpg, jpeg, pjpeg, png atau gif.


Deskripsi:


 name="deskripsi" cols="38" rows="5" id="deskripsi">

 type="hidden" name="direktori" id="direktori" value="images" />

 name="upload" type="submit" value="Upload" id="upload" />

Untuk menampilkan gambar yang telah di upload:

//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 '
No : '.$no.'
';
echo '
Nama : '.$row['file_name'].' | "upload-hapus.php?act=hapus&id='.$row['file_id'].'" onclick="return confirm(\'Anda yakin akan menghapus gambar'.$row['file_name'].'\');">Hapus
';
echo '
Ukuran : '.$row['ukuran'].' bytes
';
echo '
"'.$row['direktori'].'/'.$row['file_name'].'" />
';
echo '
Deskripsi : '.$row['deskripsi'].'

';
endwhile;
if($no==0){
echo "
Gambar belum tersedia.
";
}
?>
Skrip untuk meng-upload gambar:

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 '
Upload Gagal
';
echo '
Tipe file yang diperbolehkan jpg, jpeg, pjpeg, png atau gif.
';
echo '
"index.php">ULANGI

';
}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 '
Upload Gagal
';
echo '
Gambar telah tersedia
';
echo '
"index.php">KEMBALI

';
}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:

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;
?>

Jika gambar di hapus akan tampil konfirmasi seperti ini:
konfirmasi-hapus
Demo Skrip
Skrip selengkapnya dapat di download di sini.
–SELAMAT MENCOBA–

0 komentar:

 
Design by Wordpress Themes | Bloggerized by Free Blogger Templates | Macys Printable Coupons