繁体   English   中英

使用PHP从Postgres数据库检索图像

[英]Retrieve Image from postgres database using PHP

我正在使用Postgresql作为后端的PHP。 该数据库已经由其他人设计。 现在,我想使用PHP从数据库中检索图像。 但是我无法从数据库中检索图像。 我使用此代码来检索图像,但它在网页中仅显示不可读的字符。 有时,它显示一个小图标(例如,当我们获得网页上没有的图像时),但是大多数情况下,它显示一个空白页面。 存储图像的数据类型为“字节”。 我用来显示图像的代码如下:

$conn = pg_connect("user=xxxx password=xxxx dbname=xxxx host=xxxx");
$res = pg_query($conn, "SELECT scan_image FROM t1scandoc where image_srno='1'");
while(pg_fetch_array($res))
{
  if (pg_result($res,2))
  {
    WriteImageToFile(pg_result($res,0),$dir.pg_result($res,1),pg_result($res,2));
  }
}

您没有在读取结果属性。

  1. pg_result()不是PostgreSQL扩展定义的函数。
  2. 您没有将pg_fetch_array()的返回值存储在变量中。

以下代码应将scan_image值输出到浏览器。

$conn = pg_connect("user=xxxx password=xxxx dbname=xxxx host=xxxx");
$res = pg_query($conn, "SELECT scan_image FROM t1scandoc where image_srno='1'");
if($row = pg_fetch_array($res)) // Output only one row, we can't output multiple
{
  echo $row['scan_image'];
}

不幸的是,我不知道您的scan_image的文件格式。 不要忘记发送适当的标题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM