如何使用 PHP 在 MySQL 数据库中存储和检索图像?

2024-01-02

如何在 MySQL 中插入图像,然后使用 PHP 检索它?

我在这两个领域的经验都有限,我可以使用一些代码来开始解决这个问题。


首先创建一个 MySQL 表来存储图像,例如:

create table testblob (
    image_id        tinyint(3)  not null default '0',
    image_type      varchar(25) not null default '',
    image           blob        not null,
    image_size      varchar(25) not null default '',
    image_ctgy      varchar(25) not null default '',
    image_name      varchar(50) not null default ''
);

然后你可以将图像写入数据库,如下所示:

/***
 * All of the below MySQL_ commands can be easily
 * translated to MySQLi_ with the additions as commented
 ***/ 
$imgData = file_get_contents($filename);
$size = getimagesize($filename);
mysql_connect("localhost", "$username", "$password");
mysql_select_db ("$dbname");
// mysqli 
// $link = mysqli_connect("localhost", $username, $password,$dbname); 
$sql = sprintf("INSERT INTO testblob
    (image_type, image, image_size, image_name)
    VALUES
    ('%s', '%s', '%d', '%s')",
    /***
     * For all mysqli_ functions below, the syntax is:
     * mysqli_whartever($link, $functionContents); 
     ***/
    mysql_real_escape_string($size['mime']),
    mysql_real_escape_string($imgData),
    $size[3],
    mysql_real_escape_string($_FILES['userfile']['name'])
    );
mysql_query($sql);

您可以使用以下命令在网页中显示数据库中的图像:

$link = mysql_connect("localhost", "username", "password");
mysql_select_db("testblob");
$sql = "SELECT image FROM testblob WHERE image_id=0";
$result = mysql_query("$sql");
header("Content-type: image/jpeg");
echo mysql_result($result, 0);
mysql_close($link);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 PHP 在 MySQL 数据库中存储和检索图像? 的相关文章

  • 字符串的渐进单词组合

    我需要获得字符串的渐进单词组合 例如 这是字符串 输出 这是字符串 这是 这个字符串 是字符串 这 是 细绳 你知道类似的算法吗 我需要php语言 谢谢 这是解决您问题的简单代码 我将每个字符串递归地连接到数组中的其余字符串 string
  • 即使更新语句没有影响任何行,ExecuteNonQuery 返回 1

    我在这里面临一个非常奇怪的问题 我的 DAL 是使用编写的OdbcConnection对象并且工作完美 然而 我必须尊重一些要求 因此必须移动系统来使用MySqlConnection 你会说 不应该有任何问题 但是 现在有一点误解 当我执行
  • Codeigniter子域路由

    我正在尝试在 CodeIgniter 框架上运行的网站上设置博客脚本 我想在不对现有网站代码进行任何重大代码更改的情况下执行此操作 我认为创建一个指向另一个控制器的子域将是执行此操作的最干净的方法 我设置新设备所采取的步骤Blog涉及控制器
  • 分页当前链接未突出显示

    我遇到了一个奇怪的问题 我当前的分页链接未突出显示 我制作的分页网址如下所示 site com list 50 some value 一切工作正常 但当前视图中的分页链接未突出显示 我检查了CSS 没问题 我猜问题出在库上 这是我的代码 我
  • 如何更改mysql.sock?

    我已经通过二进制安装安装了mysql并按照以下步骤操作http dev mysql com doc refman 5 0 en binary installation html http dev mysql com doc refman 5
  • 避免刷新时上传图片

    我正在使用最简单的图像上传形式 我非常希望保持这种方式 只需要一些 php 代码看起来像这样
  • JPA:如何将字符串持久保存到数据库字段中,输入 MYSQL Text

    需求是用户可以写文章 所以我选择typeText为了contentmysql数据库内的字段 我怎样才能转换Java String into MySQL Text 干得好Jim Tough Entity public class Articl
  • PHP通知和警告的区别

    当编写代码错误时 可能会出现警告和通知 我知道错误背后的想法 我想警告是为了通知您可能导致错误的事情 但通知不是完全相同吗 我认为通知并不是某件事做得正确的消息 这让我有点困惑 任何人都可以区分这两者之间的区别以及应该如何处理这些消息 通知
  • 如何使用 aerospike 加载器在 aerospike 中加载嵌套的 csv 文件?

    我已将 JSON 文件转换为 CSV 格式 现在使用 aerospike 加载器将 CSV 加载到 Aerospike 中 我可以为简单的结构执行此操作 但如何修改 allDatatype json 的内容以在 Aerospike 中加载嵌
  • Yii:使用与控制器布局不同的布局渲染动作

    在 Yii 中 有没有办法使用不同的方式渲染单个动作layout比为控制器定义的值 我有一个操作希望其格式与其他操作不同 并且文档中不清楚这是否可能 我相信您可以调用该操作 layout多变的 public function actionY
  • 如何从 Qt 应用程序通过 ODBC 连接到 MySQL 数据库?

    我有一个新安装的 MySQL 服务器 它监听 localhost 3306 从 Qt 应用程序连接到它的正确方法是什么 原来我需要将MySQL添加到ODBC数据源 我在遵循这个视频教程后做到了这一点 https youtu be K3GZi
  • Twitter URL 编码

    我们即将发起一场小小的推特圣诞竞赛 但我遇到了一些小障碍 要进入 人们需要按以下格式发布推文 user blah blah blah hashtag 目前 我有一个表单 他们可以在其中输入答案 废话 废话 废话 和一个 PHP 脚本 该脚本
  • 下载网址在 Google Drive API PHP 中不起作用

    我在使用 Google Drive API 时遇到问题 我能够使用 API 获取文件 但无法通过此链接下载 我想 必须进行一些身份验证 但我已使用刷新令牌进行身份验证 请参阅下面的代码 this gt load gt library goo
  • 在Spring-Boot中,我们如何在同一个项目中连接两个数据库(Mysql数据库和MongoDB)?

    我正在尝试创建一个 Spring Boot 项目 其中我有一个要求 我想连接到不同的数据库 MySql 和 MongoDB 我是否需要做一些特殊的事情来连接到这两个数据库 或者 spring boot 会自动计算出自己连接到这两个数据库 我
  • PHP:如何使用 nl2br() 和 HTML Purifier 保持换行?

    Issue 使用时HTML 净化器 http htmlpurifier org 为了处理用户输入的内容 换行符不会被转换为 br tags 考虑以下用户输入的内容 Lorem ipsum dolor sit amet This is ano
  • MySQL 查询按父级排序然后子级排序

    我的数据库中有一个页面表 每个页面可以有一个父页面 如下所示 id parent id title 1 0 Home 2 0 Sitemap 3 0 Products 4 3 Product 1 5 3 Product 2 6 4 Prod
  • Python中的MariaDB连接器无法连接到远程服务器

    我使用与远程 Mariadb 服务器的连接已有几个月了 今天 无法再通过 macOS 上的 python mariadb 模块和 mariadb 连接器建立连接 基本安装如下 brew install mariadb connector c
  • 谷歌图片搜索API

    我有一个网站 用户可以在其中提交图片 我想用这些图片自动在 Google 上进行搜索 以尽量减少图片被从其他网站盗用的可能性 我知道 Firefox 扩展 但这需要我右键单击每张图片并等待结果出现 我想自动化这个 我一直在寻找 API 但
  • InnoDB:使用事务批量插入或组合多个查询?

    做批量的时候INSERT在InnoDB中 我应该使用事务吗 START TRANSACTION INSERT INTO tbl name a b c VALUES 1 2 3 INSERT INTO tbl name a b c VALUE
  • C++ 中是否有与 PHP 的explode() 函数等效的函数? [复制]

    这个问题在这里已经有答案了 可能的重复 在 C 中分割字符串 https stackoverflow com questions 236129 splitting a string in c 在 PHP 中 explode 函数将获取一个字

随机推荐