PDA

View Full Version : [ Storing and Retrieving PDF Files in Microsoft SQL Server ]


novacliffs
31-01-04, 08:39 AM
[ any idea? type of binary field.. sapa penah buat? mintak tunjuk ajar.. ]

eek1
01-02-04, 01:12 AM
simpan dlm datatype image

izuddin_y
04-02-04, 11:38 AM
Aku pun nak tau macam maner. Aku dah store pdf file tu dalam bentuk image tapi, tak boleh retrieve jer.

eek1
05-02-04, 01:38 AM
dlm database ko kena ada 2 field, cth: file_id, data

bila nak retrieve, "SELECT data FROM pdf_table WHERE file_id = 123"

data yg di-fetch tadi ko printout-kan sebagai application/pdf

novacliffs
05-02-04, 09:38 AM
[ penah buat ke?? jadik ke?? terjemahkan kepada bahasa yg lebih mudah di fahami "data yg di-fetch tadi ko printout-kan sebagai application/pdf" aku dah dgr punya byk teori.. either org tuh dah buat or not.. pon tak tau.. ]

eek1
06-02-04, 03:20 PM
/* Andaikan TABLE tbl_pdf ( id int, data image ) */

function masuk_data()
{
// baca data fail
$pdf = file_get_contents("c:/test.pdf");

// ubah data dari bentuk bin ke hex supaya
// nanti tak renyah nak masuk database
$pdf = unpack("H*hex", $pdf);

// sumbatkan $pdf['hex'] tadi ke dlm db
$lekat = mssql_connect($host,$user,$pass);
$db = mssql_select_db($database,$lekat);
$suruh = mssql_query("INSERT INTO tbl_pdf VALUES ('321', 0x{$pdf['hex']})");

// FYI data hexadecimal yg kita masukkan tadi akan di-convert balik ke
// binary secara automatik oleh MS SQL Server

return "dah masuk pun.";
}

function keluar_data()
{
// ambik balik data dari db, masuk ke dlm string $pdf
$lekat = mssql_connect($host,$user,$pass);
$db = mssql_select_db($database,$lekat);
$suruh = mssql_query("SELECT data FROM tbl_pdf WHERE id = 321");
$pdf = mssql_fetch_assoc($suruh);

// bagetau client browser kita nak out-kan data pdf
header("Content-type: application/pdf");

/* output-kan data */
echo $pdf['data'];
exit;
}

php/mssql. Prosedur nak keluarkan data mungkin tak sama untuk API lain (eg. VB) dan
client yang bukan browser, tapi basic steps dia cam tu lar.