PHP与MySQL:在HTML中显示Base64编码图片教程

DDD
发布: 2025-08-30 22:18:01
原创
470人浏览过

PHP与MySQL:在HTML中显示Base64编码图片教程

本教程详细介绍了如何使用PHP从MySQL数据库中检索Base64编码的图片数据,并将其正确地嵌入到HTML页面中进行显示。我们将探讨常见的显示问题及其解决方案,包括数据库存储格式、PHP数据提取方法以及HTML zuojiankuohaophpcnimg> 标签的正确使用,确保图片能够高效且准确地呈现在网页上。

理解Base64图片与数据URI

在web开发中,将图片直接嵌入到htmlcss中而无需单独的图片文件,通常通过base64编码实现。base64是一种将二进制数据转换为ascii字符串的编码方式。当图片被base64编码后,它通常会带有一个“数据uri”前缀,格式为 data:[<mediatype>][;base64],<data>。例如,一张jpeg图片的base64编码可能以 data:image/jpeg;base64,/9j/4aaqsk... 开头。这个前缀告诉浏览器数据的类型和编码方式,使其能够直接解析并显示图片。

当我们将Base64编码的图片存储到MySQL数据库时,通常会选择 LONGBLOB 或 TEXT/LONGTEXT 类型。如果存储的是带有 data URI 前缀的完整Base64字符串,那么在从数据库读取并显示时,无需再次进行Base64编码。

常见的图片显示问题

在尝试从数据库中取出Base64图片并显示时,开发者常遇到以下问题:

  1. 图片显示为破碎图标或空白: 这通常是由于 <img> 标签的 src 属性值不正确导致的。可能的原因包括:
    • 数据库中存储的Base64字符串不完整或损坏。
    • PHP在提取数据时发生了错误,导致 src 属性为空或包含非Base64数据。
    • 数据URI前缀(如 data:image/jpeg;base64,)缺失或错误。
    • 对已经Base64编码的数据再次进行了 base64_encode() 处理。
    • 从数据库查询结果中提取数据的方式不正确,例如,尝试对整个 $row 数组进行 implode() 或 substr() 操作,而不是直接访问包含Base64数据的特定列。

数据库设计与数据存储

为了有效地存储Base64编码的图片,MySQL中的 Video 表结构可以如下:

CREATE TABLE `video` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `Video` longblob NOT NULL, -- 存储Base64编码的图片字符串
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
登录后复制

Video 列使用 longblob 类型,因为它能够存储非常大的二进制数据,非常适合Base64编码后的图片字符串(即使是文本形式)。重要的是,确保Arduino或其他上传机制在将图片存入数据库时,已经包含了完整的 data URI 前缀。

芦笋演示
芦笋演示

一键出成片的录屏演示软件,专为制作产品演示、教学课程和使用教程而设计。

芦笋演示 34
查看详情 芦笋演示

立即学习PHP免费学习笔记(深入)”;

例如,数据库中 Video 列的数据可能看起来像这样:

data:image/jpeg;base64,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gooTAXvRSsAgpabEJ3paGOwUUA9ApaBWCkzQ0MKKLh1EpaoQUc0ALzSUgCloASlNDASg1QgpKkYtFMApaQCUUwEooAWkpALSUAFFACUUXAKKLggooASilYAooAWloBiUGgBKKAF7UlAUUUCCkpgGKKVwCigQUUhhSUgEoqiQooZRZO31xTKL33DUU5xnHNIaLDEajFWMAaKgkXrSZoWgxe9LmgGhOlH8NHqAlL3okAvekzQMOoNJnigkWlpXBBnmimNhuozQFgooTAXvRSsAgpabEJ3paGOwUUA9ApaBWCkzQ0MKKLh1EpaoQUc0ALzSUgCloASlNDASg1QgpKkYtFMApaQCUUwEooAWkpALSUAFFACUUXAKKLggooASilYAooAWloBiUGgBKKAF7UlAUUUCCkpgGKKVwCigQUUhhSUgEoqiQooZRZO31xTKL33DUU5xnHNIaLDEajFWMAaKgkXrSZoWgxe9LmgGhOlH8NHqAlL3okAvekzQMOoNJnigkWlpXBBnmimNhuozQFgooTAXvRSsAgpabEJ3paGOwUUA9ApaBWCkzQ0MKKLh1EpaoQUc0ALzSUgCloASlNDASg1QgpKkYtFMApaQCUUwEooAWkpALSUAFFACUUXAKKLggooASilYAooAWloBiUGgBKKAF7UlAUUUCCkpgGKKVwCigQUUhhSUgEoqiQooZRZO31xTKL33DUU5xnHNIaLDEajFWMAaKgkXrSZoWgxe9LmgGhOlH8NHqAlL3okAvekzQMOoNJnigkWlpXBBnmimNhuozQFgooTAXvRSsAgpabEJ3paGOwUUA9ApaBWCkzQ0MKKLh1EpaoQUc0ALzSUgCloASlNDASg1QgpKkYtFMApaQCUUwEooAWkpALSUAFFACUUXAKKLggooASilYAooAWloBiUGgBKKAF7UlAUUUCCkpgGKKVwCigQUUhhSUgEoqiQooZRZO31xTKL33DUU5xnHNIaLDEajFWMAaKgkXrSZoWgxe9LmgGhOlH8NHqAlL3okAvekzQMOoNJnigkWlpXBBnmimNhuozQFgooTAXvRSsAgpabEJ3paGOwUUA9ApaBWCkzQ0MKKLh1EpaoQUc0ALzSUgCloASlNDASg1QgpKkYtFMApaQCUUwEooAWkpALSUAFFACUUXAKKLggooASilYAooAWloBiUGgBKKAF7UlAUUUCCkpgGKKVwCigQUUhhSUgEoqiQooZRZO31xTKL33DUU5xnHNIaLDEajFWMAaKgkXrSZoWgxe9LmgGhOlH8NHqAlL3okAvekzQMOoNJnigkWlpXBBnmimNhuozQFgooTAXvRSsAgpabEJ3paGOwUUA9ApaBWCkzQ0MKKLh1EpaoQUc0ALzSUgCloASlNDASg1QgpKkYtFMApaQCUUwEooAWkpALSUAFFACUUXAKKLggooASilYAooAWloBiUGgBKKAF7UlAUUUCCkpgGKKVwCigQUUhhSUgEoqiQooZRZO31xTKL33DUU5xnHNIaLDEajFWMAaKgkXrSZoWgxe9LmgGhOlH8NHqAlL3okAvekzQMOoNJnigkWlpXBBnmimNhuozQFgooTAXvRSsAgpabEJ3paGOwUUA9ApaBWCkzQ0MKKLh1EpaoQUc0ALzSUgCloASlNDASg1QgpKkYtFMApaQCUUwEooAWkpALSUAFFACUUXAKKLggooASilYAooAWloBiUGgBKKAF7UlAUUUCCkpgGKKVwCigQUUhhSUgEoqiQooZRZO31xTKL33DUU5xnHNIaLDEajFWMAaKgkXrSZoWgxe9LmgGhOlH8NHqAlL3okAvekzQMOoNJnigkWlpXBBnmimNhuozQFgooTAXvRSsAgpabEJ3paGOwUUA9ApaBWCkzQ0MKKLh1EpaoQUc0ALzSUgCloASlNDASg1QgpKkYtFMApaQCUUwEooAWkpALSUAFFACUUXAKKLggooASilYAooAWloBiUGgBKKAF7UlAUUUCCkpgGKKVwCigQUUhhSUgEoqiQooZRZO31xTKL33DUU5xnHNIaLDEajFWMAaKgkXrSZoWgxe9LmgGhOlH8NHqAlL3okAvekzQMOoNJnigkWlpXBBnmimNhuozQFgooTAXvRSsAgpabEJ3paGOwUUA9ApaBWCkzQ0MKKLh1EpaoQUc0ALzSUgCloASlNDASg1QgpKkYtFMApaQCUUwEooAWkpALSUAFFACUUXAKKLggooASilYAooAWloBiUGgBKKAF7UlAUUUCCkpgGKKVwCigQUUhhSUgEoqiQooZRZO31xTKL33DUU5xnHNIaLDEajFWMAaKgkXrSZoWgxe9LmgGhOlH8NHqAlL3okAvekzQMOoNJnigkWlpXBBnmimNhuozQFgooTAXvRSsAgpabEJ3paGOwUUA9ApaBWCkzQ0MKKLh1EpaoQUc0ALzSUgCloASlNDASg1QgpKkYtFMApaQCUUwEooAWkpALSUAFFACUUXAKKLggooASilYAooAWloBiUGgBKKAF7UlAUUUCCkpgGKKVwCigQUUhhSUgEoqiQooZRZO31xTKL33DUU5xnHNIaLDEajFWMAaKgkXrSZoWgxe9LmgGhOlH8NHqAlL3okAvekzQMOoNJnigkWlpXBBnmimNhuozQFgooTAXvRSsAgpabEJ3paGOwUUA9ApaBWCkzQ0MKKLh1EpaoQUc0ALzSUgCloASlNDASg1QgpKkYtFMApaQCUUwEooAWkpALSUAFFACUUXAKKLggooASilYAooAWloBiUGgBKKAF7UlAUUUCCkpgGKKVwCigQUUhhSUgEoqiQooZRZO31xTKL33DUU5xnHNIaLDEajFWMAaKgkXrSZoWgxe9LmgGhOlH8NHqAlL3okAvekzQMOoNJnigkWlpXBBnmimNhuozQFgooTAXvRSsAgpabEJ3paGOwUUA9ApaBWC
登录后复制

以上就是PHP与MySQL:在HTML中显示Base64编码图片教程的详细内容,更多请关注php中文网其它相关文章!

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号