DIEDIT UNTUK MENAMBAH :Kode berikut kedaluwarsa dan tidak akan berfungsi di PHP 7. Lihat catatan di bagian bawah jawaban untuk detail selengkapnya.
Dengan asumsi struktur tabel ID integer dan kolom DATA gumpalan, dan dengan asumsi fungsi MySQL digunakan untuk antarmuka dengan database, Anda mungkin bisa melakukan sesuatu seperti ini:
$result = mysql_query 'INSERT INTO table (
data
) VALUES (
\'' . mysql_real_escape_string (file_get_contents ('/path/to/the/file/to/store.pdf')) . '\'
);';
Sebuah kata peringatan, menyimpan gumpalan dalam database umumnya tidak dianggap sebagai ide terbaik karena dapat menyebabkan tabel mengasapi dan memiliki sejumlah masalah lain yang terkait dengannya. Pendekatan yang lebih baik adalah dengan memindahkan file ke suatu tempat di sistem file tempat file dapat diambil, dan menyimpan jalur ke file dalam database alih-alih file itu sendiri.
Juga, menggunakan panggilan fungsi mysql_* tidak disarankan karena metode tersebut secara efektif tidak digunakan lagi dan tidak benar-benar dibangun dengan mempertimbangkan versi MySQL yang lebih baru dari 4.x. Anda harus beralih ke mysqli atau PDO sebagai gantinya.
PERBARUI :fungsi mysql_* tidak digunakan lagi di PHP 5.x dan DIHAPUS SEPENUHNYA DI PHP 7! Anda sekarang tidak punya pilihan selain beralih ke Abstraksi Database yang lebih modern (MySQLI, PDO). Saya telah memutuskan untuk membiarkan jawaban asli di atas tetap utuh karena alasan historis tetapi tidak benar-benar menggunakannya
Berikut cara melakukannya dengan mysqli dalam mode prosedural:
$result = mysqli_query ($db, 'INSERT INTO table (
data
) VALUES (
\'' . mysqli_real_escape_string (file_get_contents ('/path/to/the/file/to/store.pdf'), $db) . '\'
);');
Cara ideal untuk melakukannya adalah dengan pernyataan yang disiapkan MySQLI/PDO.