Cara Upload Gambar Di MySQL Menggunakan PHP

Cara Upload Gambar Di MySQL Menggunakan PHP

Cara Upload Gambar Di MySQL Menggunakan PHP

Cara Upload Gambar Di MySQL Menggunakan PHP, Pada beberapa form registrasi PHP dan aplikasi kita membutuhkan upload gambar. Contoh: Untuk upload gambar Profil, upload foto galeri, gambar produk dll

Ada dua cara untuk menyisipkan gambar di mysql.

  1. Upload Gambar format biner
  2. Upload gambar ke folder

Upload Gambar Menggunakan format biner

Pada tipe ini kita langsung memasukkan gambar ke dalam tabel mysql menggunakan format biner.

Upload gambar ke folder

Pada tipe ini kita mengupload gambar ke dalam folder dan menyimpan nama gambar di tabel MySql.

Untuk memasukkan gambar di MySQL terlebih dahulu kita harus membuat tabel di basis data.

CREATE TABLE `tbl_gambar` (

`id` int(11) NOT NULL,

`gambar` varchar(55) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=latin1;

 

 

index.php

<!DOCTYPE html>

<html>

<head>

<title>Insert Gambar di MySql dengan PHP</title>

</head>

<body>

<form action="upload.php" method="post" enctype="multipart/form-data">

<input type="file" name="gambar[]" />

<button type="submit">Upload</button>

</form>

</body>

</html>

 

upload.php

<?php

$cn=mysqli_connect("localhost","root","","crud") or die("Could not Connect My Sql");

$output_dir = "upload/";/* Path for file upload */

$RandomNum = time();

$GambarName = str_replace(' ','-',strtolower($_FILES['gambar']['name'][0]));

$GambarType = $_FILES['gambar']['type'][0];




$GambarExt = substr($GambarName, strrpos($GambarName, '.'));

$GambarExt = str_replace('.','',$GambarExt);

$GambarName = preg_replace("/\.[^.\s]{3,4}$/", "", $GambarName);

$NewGambarName = $GambarName.'-'.$RandomNum.'.'.$GambarExt;

$ret[$NewGambarName]= $output_dir.$NewGambarName;




/* Try to create the directory if it does not exist */

if (!file_exists($output_dir))

{

@mkdir($output_dir, 0777);

}

move_uploaded_file($_FILES["gambar"]["tmp_name"][0],$output_dir."/".$NewGambarName );

$sql = "INSERT INTO `tbl_gambar`(`gambar`)VALUES ('$NewGambarName')";

if (mysqli_query($cn, $sql)) {

echo "successfully !";

}

else {

echo "Error: " . $sql . "" . mysqli_error($cn);

}

?>

 

CREATE TABLE `tbl_gambar` (

`id` int(11) NOT NULL,

`gambar` LONGBLOB NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=latin1;

 

 

Di sini kami menggunakan 1 file untuk memasukkan gambar di MySQL:

  • index.php HTML form yang memungkinkan pengguna untuk memilih file gambar yang ingin mereka upload.
Baca Juga  Cara Menampilkan marker ke Peta Google dengan PHP dan MySQL

Menggunakan format biner

<!DOCTYPE html>

<html>

<head>

<title>Insert Gambar di MySql dengan PHP</title>

</head>

<body>

<?php

$msg = '';

if($_SERVER['REQUEST_METHOD']=='POST'){

$gambar = $_FILES['gambar']['tmp_name'];

$img = file_get_contents($gambar);

$con = mysqli_connect('localhost','root','',crud) or die('Unable To connect');

$sql = "insert into tbl_gambar (gambar) values(?)";

$stmt = mysqli_prepare($con,$sql);

mysqli_stmt_bind_param($stmt, "s",$img);

mysqli_stmt_execute($stmt);

$check = mysqli_stmt_affected_rows($stmt);

if($check==1){

$msg = 'Gambar Successfullly UPloaded';

}else{

$msg = 'Error uploading gambar';

}

mysqli_close($con);

}

?>

<form action="" method="post" enctype="multipart/form-data">

<input type="file" name="gambar" />

<button>Upload</button>

</form>

<?php

echo $msg;

?>

</body>

</html>

 

 

Tinggalkan Komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Need Help? Chat with us