【问题标题】:adding image files to database table将图像文件添加到数据库表
【发布时间】:2011-06-03 07:22:20
【问题描述】:

如何将图像文件添加到 mysql 表中。我是一名程序员,我正在使用 php 和 mysql。

【问题讨论】:

标签: mysql image file insertion


【解决方案1】:

您需要使用blob(或mediumblob或longblob,具体取决于您要支持的最大图像大小)数据类型来存储二进制数据。

在插入之前,一定要对二进制图像数据中的特殊字符进行转义。

 $img_data =mysql_real_escape_string(file_get_contents($filename));

【讨论】:

    【解决方案2】:

    我通常存储图像文件的 url 而不是文件本身(不太清楚你会怎么做)。我建议存储 url 并使用

    【讨论】:

    • 这两种方法各有利弊。
    • @JP19 列举一些 BLOB 方法的优点。
    • 消除磁盘 I/O。由于缓存,访问速度更快(我知道,有 存在 超级快速硬盘 - 但我的 VPS 磁盘 I/O 是适度的)。数据库存储特别适用于网站图标和缩略图。管理权限也更容易(你只需要关心数据库用户/权限,而不是文件系统文件夹)。另外 - 我接受普通用户不需要图像的数据库存储。但在某些情况下,人们可能会想要它——它不像你认为的那样多余!
    • @JP19 除了“管理权限”之外,这都是不真实的。阅读stackoverflow.com/questions/3748/…
    • @middaparka:我的 VPS 磁盘 I/O 确实适中 :)(读取速度慢)。我还在使用 APC 缓存,这使得在数据库中存储网站图标/缩略图对我来说更好。
    【解决方案3】:

    您不应为网站添加图片本身。您将图像上传到服务器,然后将路径保存到数据库中。然后您应该能够将文件的路径输出到 HTML。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-04-26
      • 2014-01-29
      • 2020-03-25
      • 2012-07-04
      • 1970-01-01
      • 1970-01-01
      • 2021-02-20
      相关资源
      最近更新 更多