这是我使用 android
将图像上传到 mysql
database
的代码。
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
代码,用于将图像提取到网络仪表板中。
echo '<img src="data:image/jpeg;base64,'.base64_encode( $row['image'] ).'" width="50px" height="50px"/>';?>
但是上面的代码不显示图像,只显示更改消息。
但是,当我使用 phpmyadmin
将图像插入 mysql
数据库时,它会显示在网络仪表板中。我不明白发生了什么。请帮助我
最佳答案
我想因为它已经被编码了,你已经用 base64 发送了它,所以尝试从 img 标签中删除 base64_encode 因为你对它进行了两次编码。
关于php - 无法从 mysql 数据库中获取 BLOB 类型图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50421047/