首页 > 解决方案 > 无法从 mysql 数据库中获取 BLOB 类型图像

问题描述

这是我将图像上传到mysql databaseusing的代码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我无法理解发生了什么。请帮我

标签: phpandroidmysql

解决方案


我认为因为它已经编码,你已经在 base64 中发送它,所以尝试从 img 标签中删除 base64_encode ,因为你对其进行了两次编码。


推荐阅读