PHP-Code:
$db = new PDO('mysql:host=localhost;dbname=test;charset=utf8', 'root', '', [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_EMULATE_PREPARES => false
]);
$db->query('
CREATE TEMPORARY TABLE test (
id INT NOT NULL AUTO_INCREMENT,
bin_data BLOB NOT NULL,
PRIMARY KEY (id)
)
');
$fp = fopen('image.jpg', 'r');
$stmt = $db->prepare('INSERT INTO test (bin_data) VALUES (?)');
$stmt->bindParam(1, $fp, PDO::PARAM_LOB);
$stmt->execute();
$result = $db->query('SELECT bin_data FROM test LIMIT 1');
header('Content-Type: image/jpeg');
echo $result->fetch(PDO::FETCH_NUM)[0];
Kommentar