如标题所述,我很难显示图像。代码从数据库中提取数据并将其显示为一堆无意义的字符。该字段是varbinary(MAX)数据类型。我尝试过使用JPEG标头,因为只允许JPEG文件保存到数据库,并且回显$ row 1变量($ row 1是存储图像的列所在的位置)但是它没有输出任何东西。有没有一种标准方法可以将varbinary(MAX)数据类型的二进制数据显示为PHP中的图像?
PHP输出
PHP代码
<?php
$servername = "MAINSERVER\SQLEXPRESS";
$dbname = "SqlFileStream";
$conn = sqlsrv_connect($servername) or die('Cannot connect to database');
$stmt = sqlsrv_query($conn, 'SELECT * FROM [VarbinaryTest]') or die(print_r( sqlsrv_errors(), true));
while ($row = sqlsrv_fetch_array($stmt))
{
echo '<br />';
echo 'Model: '.$row['model'];
header('Content-type: image/JPG');
echo $row['Data'];
}
sqlsrv_free_result($stmt);
?>