Data BLOB In PHP

Ok menindak lanjuti semangat bikin artikel, dokumentasi jadi lahir artikel-artikel dokumentasi yang dirasa perlu dan sering kelupaan karena harus liat contoh script yang dibuat. hehe.

Pengolahan data blob di php, sangat mudah. Keuntungan dari penggunaan data blob adalah simple pengolahan data gak neko2 jadi tinggal upload trus baca. Karena biasanya file yang disimpan menggunakan blob adalah file yang udah jadi kayak doc, xls, jpg,exe,… wah pokonya terserah yang bentuknya dokumen tanpa perlu pengolahan.

Apa yang akan kita buat..?

  • Gimana cara Nyimpan file BLOB ke database via PHP, nah untuk database kita menggunakan MySQL aja dulu, klo pengen ke ORACLE juga gak masalah mungkin yang beda cuma masalah koneksi dan fungsi select database. Lha wong query itu standart, jadi yang beda cuma koneksinya.
  • Gimana Cara Menampilkan data BLOB yang ada di database

Langsung aja yuk…!

1. Nyimpan file BLOB ke database pakek PHP

#Bikin databasenya dulu
CREATE TABLE `myBlobs` (
`blobId` int(11) NOT NULL auto_increment,
`blobTitle` varchar(50) default NULL,
`blobDeskripsi` varchar(200) NOT NULL default ”,
`blobData` longblob,
`blobType` varchar(50) default NULL,
`blobDate` datetime NOT NULL default ‘0000-00-00 00:00:00’,
PRIMARY KEY (`blobId`),
UNIQUE KEY `id` (`blobId`)
) TYPE=MyISAM AUTO_INCREMENT=13 ;

#INI script PHPnya— saya anggap semua udah bisa bikin FORM di html, ya hehe

//ngambil data di FORM
$strDesc = $HTTP_POST_VARS[“strDesc”];
$fileUpload = $_FILES[“fileUpload”][“tmp_name”];
$fileUpload_name = $_FILES[“fileUpload”][“name”];
$fileUpload_size = $_FILES[“fileUpload”][“size”];
$fileUpload_type = $_FILES[“fileUpload”][“type”];

//cek ada datanya gak
if(empty($strDesc) || empty($fileUpload) )
die(“file dan deskripsi harus di isi”);

// Database connection variables
$dbServer = “localhost”;
$dbDatabase = “mamat”;
$dbUser = “su”;
$dbPass = “su6”;

$fileHandle = fopen($fileUpload, “rb”);
$fileContent = fread($fileHandle, $fileUpload_size);
$fileContent = addslashes($fileContent);

$sConn = mysql_connect($dbServer, $dbUser, $dbPass)
or die(“tidak bisa connect to database server”);

$dConn = mysql_select_db($dbDatabase, $sConn)
or die(“Ora iso connect to database $dbDatabase”);

$dbQuery = “INSERT INTO myBlobs VALUES “;
$dbQuery .= “(0, ‘$strDesc’, ‘$fileContent’, ‘$fileUpload_type’)”;
mysql_query($dbQuery) or die(“Ora iso add file to database”);

wis gitu thok gampang kan, tp aq keseringan lupa hehe terutama saat pembukaan file(fopen).

2. Cara Nampilinnya Mat…? Ok ok, gampang prend.
// Database connection variables

$dbServer = “localhost”;
$dbDatabase = “mamat”;
$dbUser = “su”;
$dbPass = “su6”;

$sConn = mysql_connect($dbServer, $dbUser, $dbPass)
or die(“Dul ora connect to database server”);

$dConn = mysql_select_db($dbDatabase, $sConn)
or die(“Dul ora connect to database $dbDatabase”);

$blobId = $_GET[‘fileId’];

$dbQuery = “SELECT blobType, blobData “;
$dbQuery .= “FROM myBlobs “;
$dbQuery .= “WHERE blobId = $blobId”;
$result = mysql_query($dbQuery) or die(“Dul Ora iso get file list”);

if(mysql_num_rows($result) == 1) {

$fileType = @mysql_result($result, 0, “blobType”);
$fileContent = @mysql_result($result, 0, “blobData”);

header(“Content-type: $fileType”);

echo $fileContent;

}

else{

echo “Record doesn’t exist/ora enek datane DUL <– terispirasi Mas Ucup Gendul.”;

}

?>

mudah-mudahan bermanfaat, terutama bagi penulis sendiri hehe.

3 Tanggapan

  1. setelah mencoba rubriK BLOB di php, kenapa jawabannya selalu Can’t get file list, tlng dijelaskan pemasalahannya, dan penyelesaiannya step by step thanks.

  2. Mmmm, mao tanya..

    1) Itu kan nampilin gambarnya 1 doank, klo mao nampilin gambarnya banyak dari banyak records gmn..?

    2) itu kan nampilinnya waktu pertama page di load misal dengan asumsi ada GET fileID.. Klo script di atas dimasukin ke function koq munculnya karakter2 bukan bahasa manusia ya wekkekek… Gmn caranya biar bisa jalan di fucntion?

    Thanks.. email me if u have replied, k?! ^^

  3. maju terus postingannya asyik boy

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: