0

この次のコードを使用して、データベースから画像を表示します。このコードは、読み取り不可能な形式で画像を取得します。データベースで、「blob」で画像タイプを作成します。ユーザーが表示する画像の名前を入力したときに画像を動的に表示するのを手伝ってください画像のみ

私のデータベーステーブルテーブル名ストア

id | name |image
---------------
1 |  xxxx| (image)

<?php
mysql_connect("localhost","root","")or die(mysql_error());
mysql_select_db("databaseimage") or die(mysql_error());

$query = "SELECT * FROM store where fname = 'ss' ";

$info = mysql_query($query) or die(mysql_error());

$num = mysql_num_rows($info);




$sql ="select image from store where fname = 'ss' ";

$result = mysql_query($sql) or die(mysql_error());

if($result){
    echo'
<table align="center" cellspacing="0" cellpadding="5" bgcolor="#ffffff" border=1   bordercolor="#2696b8">
            <tr>

</tr>';


while($row = mysql_fetch_array($result, MYSQL_ASSOC)){
                echo'<tr>


<td align="center" width="150" height="200"><img src="datadesign.php' . $row['image'] . '">


</tr>';
                    }
    echo'</table>';
}

else{
    echo'<h1> System Error </h1> table ';
    exit();
}
mysql_close();
?>
4

2 に答える 2

0

基本的に2つの可能なオプションがあります。データ URI スキーム ( http://en.wikipedia.org/wiki/Data_URI_scheme ) を使用するかどうか。私は通常、データ uri なしで 2 つのスクリプトを使用することを好みます。これらはアイデアを提供するための例にすぎないため、コードブローを編集する必要がある場合があります.

1. 画像付きのテーブルを作成するには、2 つのスクリプトが必要です。

table.php

<table align="center" cellspacing="0" cellpadding="5" bgcolor="#ffffff" border=1   bordercolor="#2696b8">
<tr>
<td align="center" width="150" height="200"><img src="image.php?image_id=1">
</tr>
</table>

image.php

mysql_connect("localhost","root","")or die(mysql_error());
mysql_select_db("databaseimage") or die(mysql_error());
$sql ="select image from store where id= '".intval($_GET['image_id'])."' ";
$result = mysql_query($sql) or die(mysql_error());
header('Content-Type: image/png');
if($result){
  $row = mysql_fetch_row($result);
  echo $row['image'];
  mysql_close();
}
else
{
  echo readfile('/your/path/error/image.png');
}

2. 画像付きのテーブルを作成するには、1 つのスクリプトが必要です。

table.php

mysql_connect("localhost","root","")or die(mysql_error());
mysql_select_db("databaseimage") or die(mysql_error());

$query = "SELECT * FROM store where fname = 'ss' ";

$info = mysql_query($query) or die(mysql_error());

$num = mysql_num_rows($info);
if ($num > 0)
{
echo'
<table align="center" cellspacing="0" cellpadding="5" bgcolor="#ffffff" border=1   bordercolor="#2696b8">
            <tr>

</tr>';


while($row = mysql_fetch_array($info, MYSQL_ASSOC)){
                echo'<tr>


<td align="center" width="150" height="200"><img src="data:image/png;base64,'.base64_encode($row['image']). '">


</tr>';
                    }
    echo'</table>';
}
 mysql_close();
于 2013-08-22T06:45:15.510 に答える
0

これを試して :

header("Content-type: image/jpeg");
     echo mysql_result($result, 0);
于 2013-08-22T06:42:57.330 に答える