使用Zend从mysql数据库存储和检索照片

时间:2012-03-14 13:37:29

标签: zend-framework zend-db

我正在尝试存储和检索MySql数据库中的照片 有人能告诉我怎么做吗?

  • 现在解决的第一个解决方案:
    我在表单中使用Zend_File_Transfer和Zend_Form_Element_File将文件上传到指定的文件夹,在我的数据库中保存完整路径和mime类型。
    (存储在服务器中的文件和存储在数据库中的文件信息)
  • 我想知道怎么做的第二个解决方案:
    我正在搜索如何实现从Mysql BLOB字段(包含我的照片文件)中检索数据的方法,并在可能的情况下在<img>标记中将其显示在我的视图中。
    (文件和信息存储在数据库中)

1 个答案:

答案 0 :(得分:0)

我解决了我的问题,如下:

  1. 将我的照片文件存储在BLOB字段中的数据库中(使用传统的Zend_Form,Zend_File_Transfer和Zend_Form_Element_File)
  2. 当从我的数据库中重新呈现此文件数据以在我的视图中呈现它时,我使用类似这样的内容:

    <img src="data:<?php echo $dbData->fileMimeType; ?>;base64,<?php echo base64_encode($dbData->fileData); ?>" />
    html结果是这样的:
    <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAaQAAAGkCAYAAAB+TFE1AAA....(Data)....LKf3f6ZTf/akvtxuC8HL7kcUkjg9UAOG2nxejCHTa2518Mju"\>

  3. 如此简单和如此简单:)