php插入图片到sqlite数据库中、从sqlite数据库中读取图片

以下例子亲测可用。

 

<?php

//向数据库中插入图片

$db = new PDO("sqlite:D:/WWW/smarthome/db/serverdatabase");
//获取文件2进制流
$filename = "d:/a.gif";
$handle = fopen($filename, "r");
$contents = fread($handle,filesize($filename));
fclose($handle);
//创建数据表
$db->exec('CREATE TABLE person (idnum TEXT,name TEXT,photo BLOB)');
$stmt = $db->prepare("INSERT INTO person VALUES ('222', '赵大',?)");
$stmt->bindValue(1, $contents, PDO::PARAM_LOB);
$stmt->execute();


//从数据库中读取图片


$result = $db->query("SELECT * FROM person WHERE idnum= '222'");
//获取第一行数据
$row = $result->fetch();
//写出数据记录,首先查看是否存在记录
if(!empty($row))
{header("Content-type: image/JPEG",true);echo($row["photo"]);}
//显式的关闭PDO连接
$db = NULL;

 ?>

 

你可能感兴趣的:(PHP,数据库,sqlite,header,table,insert)