【问题标题】:php mysql insert image BLOB fieldphp mysql插入图像BLOB字段
【发布时间】:2012-11-08 16:42:01
【问题描述】:

我有一个包含 6 个字段的表格 students_id, customer_id, firstname, lastname, image_name, image 这个 image 字段是 BLOB 类型,image_name 字段图像文件名和扩展名。我知道如何从 blob 字段获取存储的图像并显示到我的网页,我通过 phpmyadmin 上传图像对其进行了测试...我的问题是如何将图像存储在我的 image 字段中。?

这是我用于其他领域的内容..

<?php
public function addStudents($data) {
     $this->db->query("INSERT INTO " . DB_PREFIX . "students SET customer_id = '" .
 (int)$this->customer->getId() . "', firstname = '" . $this->db->escape($data['firstname']) .
 "', lastname = '" . $this->db->escape($data['lastname']) . "'");
}
?>

这是我的 HTML 图片上传部分

<input type="file" name="image" />

有人请帮帮我吗?如果有人可以通过编辑我的源代码来回答它非常有帮助...

谢谢...

【问题讨论】:

  • 在数据库中存储图像是个坏主意。它现在可能看起来很方便,但你稍后会扯掉头发。不要这样做。将图像存储在服务器文件系统的某个位置,并将文件的路径存储在数据库中。
  • @MarcB,您能否详细说明可能出现的“扯头发”问题?我一直倾向于使用文件系统,主要是因为存储和备份问题。但是以编程方式存在哪些问题?
  • 所以,您实际上并没有询问有关数据库或 BLOB 的任何信息,是吗?你的问题是关于handling file uploads in PHP?
  • @pinny:每次请求文件时都必须查询文件,当您发现图像没有被各种客户端浏览器(或其他)缓存时,就会产生带宽费用,因为它们没有t以“正常”方法提供。数据库转储非常臃肿,因为它们中有大量的除非二进制垃圾。
  • @MarcB,根据您的路由和缓存控制的执行方式,缓存应该不是问题吗?我同意数据库转储会很快失控......

标签: php mysql sql blob image-upload


【解决方案1】:

嗯,你可以查看http://www.mysqltutorial.org/php-mysql-blob/,解释清楚了

【讨论】:

  • 请注意,link-only answers are discouraged,SO 答案应该是寻找解决方案的终点(与另一个中途停留的参考相比,它往往会随着时间的推移变得陈旧)。请考虑在此处添加独立的概要,并保留链接作为参考。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-26
  • 2015-11-03
  • 2021-02-17
  • 1970-01-01
  • 2013-03-21
相关资源
最近更新 更多