php - 无法从 mysql 数据库中获取 BLOB 类型图像
问题描述
这是我将图像上传到mysql
database
using的代码android
。
Bitmap bitmap = params[0];
String uploadImage = getStringImage(bitmap);
HashMap<String, String> data = new HashMap<>();
data.put(UPLOAD_KEY, uploadImage);
String result = rh.sendPostRequest(UPLOAD_URL, data);
我在上传之前压缩了它
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.JPEG, 0, baos);
byte[] imageBytes = baos.toByteArray();
String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT);
return encodedImage;
它工作得很好,它也将图像上传到db
。这是我php
将图像提取到 Web 仪表板的代码。
echo '<img src="data:image/jpeg;base64,'.base64_encode( $row['image'] ).'" width="50px" height="50px"/>';?>
但是上面的代码没有显示图像,只显示了alter msg。但是,当我使用它在 Web 仪表板中显示的图像将图像插入mysql
数据库时。phpmyadmin
我无法理解发生了什么。请帮我
解决方案
我认为因为它已经编码,你已经在 base64 中发送它,所以尝试从 img 标签中删除 base64_encode ,因为你对其进行了两次编码。
推荐阅读
- php - 奇怪的未解决的 PDO 错误:语法错误或访问冲突:1064 您的 SQL 语法有错误;
- c++ - 哪个函数负责 C++ 中全局范围内的类对象初始化?
- ms-access - OutputTo 在计划任务中失败,并显示“即使用户未登录也运行”
- javascript - 带有字符串的操作数“`”和“$”,例如 toDateString
- java - 如何使用 .json 文件刷新基本“数据库”
- angular - 带有 intl 的 angular/devextreme 中的自定义日期格式
- c# - .NET 何时尝试解析程序集引用?
- java - 创建一个简单的 Java 规则引擎
- javascript - 如何相对于映射的 div 放置组件?反应 Redux CSS
- ascii - \033[ 中的控制序列列表(用于 urxvt 键符)