【问题标题】:Retrieve Document in php from sql server 2008从 sql server 2008 中检索 php 中的文档
【发布时间】:2013-01-24 06:05:01
【问题描述】:

我有一个 sql server 2008 数据库表,我在其中存储所有类型的文档,即 doc、docx、pdf、图像。 数据字段的数据类型是“图像”。

数据存储在数据库中。 但我需要检索它并将其显示在我的 php 页面中。 我不需要保存或更改它,但用户只需要查看该文档。

我正在使用简单的选择查询,例如

select docid,docname,data from documents

数据字段导致System.Byte[]。

我需要做什么才能在我的 php 应用程序中打印该文档?

请帮帮我。

  • 提前致谢。

毛萨米

【问题讨论】:

    标签: php sql-server-2008 image-processing


    【解决方案1】:

    要直接从内存中显示,您需要知道mimetype。在像这样存储随机文件的表中,通常的过程是将文件类型和 mimetype 存储在另一个字段中。您是否有权访问此类数据?

    如果您确实知道 mimetype,那么您可以使用发布到this similar question 的答案来通知浏览器使用该技术会发生什么。谷歌Header Content-Type 了解更多信息。

    如果您不知道文件 mime 类型,那么您可能必须将二进制文件保存到网络服务器上的本地文件中,然后尝试从那里显示它并希望浏览器知道如何处理文件类型.

    【讨论】:

    • 是的,我可以将数据库中的 mimetype 数据作为 m 将文档类型存储到数据库表中。我试图这样做: $file=$doc["filedata"]; $length = strlen($file); header("内容类型:应用程序/pdf"); header("内容长度:$length"); header("Content-Disposition: inline; filename='$filename'");回声$文件; -----但结果是'System.Byte []'。我需要做什么?
    猜你喜欢
    • 1970-01-01
    • 2011-07-29
    • 1970-01-01
    • 2014-06-16
    • 1970-01-01
    • 1970-01-01
    • 2013-07-10
    • 1970-01-01
    • 2011-02-03
    相关资源
    最近更新 更多