1)Base64オプション
image/png
という1行で作業します png画像とimage/jpeg
の場合 jpgの場合:
echo '<img src="data:image/png;base64,'.base64_encode($blob).'"/>';
例:
<div style="background-color:black; text-align:center; padding: 5px;">
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAwBAMAAACh2TSJAAAALVBMVEUAAADtNTX////3n5/+9fX719f7zMz5tLTzfHzuQED//f31jY3ybGzxXV3wVFRaxp+rAAAAAXRSTlMAQObYZgAAALVJREFUOMut0rENAjEQRNHdC4kY0QBaAQUQX0QAFSAKIKQEKiAA6VqgIkriApuV1x7pQPz0aWwHljLMpZ0CRDBGoXmeghGYKFJsUo90giAImCgV5OJF+oOgKE48MlGgs2VLBIunWesw0a1ZHqF82c7GmmIfUSpgotOly29DFPFJFDEhkgIT/V5mZuvj6XofKrHU6vyI4u37IYi36aN4h5tL7PJyif1dvCgEpapzISbCTEj5R78BZq5A5Ldh2XYAAAAASUVORK5CYII">
</div>
2)専用ページ
同じページに多くの全体像があるため、base64は適切な選択ではない可能性があります
Base64はかっこいいですが、少し重い (通常、バイナリの約2倍 値がエンコードされています)およびキャッシュできません ページ自体ではなく、ページの一部であるため、ブラウザによって(画像のように)
この場合、特定のphpページを使用して画像を表示するのが最善です:
メインページでは、base 64の代わりに使用します:echo '<img src="image.php?id='.$id.'"/>';
画像が必要な行のIDを使用します。
image.php
で 、基本的にはこれを使用する必要があります:
// << include the $pdo here
$query = $pdo->prepare("SELECT `content` FROM `adsubm` WHERE `id` = :id" );
$query->execute(array(':id'=>$_GET['id']));
$data = $query->fetch();
if(empty($data)))
header("HTTP/1.0 404 Not Found");
else {
header('Content-type: image/jpeg');
echo $data['content'];
}