Php 无法将图像从url加载到Android图像视图
我在自己的数据库中有一个这样的图像 我用这段PHP代码在浏览器中显示图像,效果很好Php 无法将图像从url加载到Android图像视图,php,android,database,loadimage,Php,Android,Database,Loadimage,我在自己的数据库中有一个这样的图像 我用这段PHP代码在浏览器中显示图像,效果很好 <?php require_once __DIR__ . '/db_config1.php'; $con = mysqli_connect(DB_SERVER, DB_USER, DB_PASSWORD); if(mysqli_connect_errno()){ echo "connect failed: %s\n", mysqli_connect_error;
<?php
require_once __DIR__ . '/db_config1.php';
$con = mysqli_connect(DB_SERVER, DB_USER, DB_PASSWORD);
if(mysqli_connect_errno()){
echo "connect failed: %s\n", mysqli_connect_error;
}
$db = mysqli_select_db($con, DB_DATABASE) or die(mysqli_error($con));
if (isset($_GET['pid'])) {
$pid = $_GET['pid'];
$result = mysqli_query($con, "SELECT * FROM products WHERE pid = $pid");
if (!empty($result)) {
$result = mysqli_fetch_array($result);
}
header('content-type: image/png');
echo $result['image'];
mysqli_close($con);
}else{
echo "Error";
}
?>
所有的主题都适用于我在互联网上获得的所有图像的url(谷歌图像或某些网站上传图像中的图像),但不适用于我的图像的url(图像总是返回Null,并且在图像视图中不显示任何内容)。url是数组或数组列表?图像中没有扩展。。可能是b问题。@johnrao07 url是字符串,而不是数组或ArrayList这一行在这里字符串urldisplay=url[0];嘿,试试看。在url中添加带扩展名的图像名称,并重新执行代码。url是数组还是arrayLIst?图像中没有扩展名。。可能是b问题。@johnrao07 url是字符串,而不是数组或ArrayList这一行在这里字符串urldisplay=url[0];嘿,试试看。在url中添加带扩展名的图像名称,然后再次执行代码
<uses-permission android:name="android.permission.INTERNET" />
//Using in AsynTask
class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {
private Bitmap image;
private CircleImageView civ;
public DownloadImageTask(CircleImageView civ) {
this.civ = civ;
}
protected Bitmap doInBackground(String... urls) {
String urldisplay = urls[0];
try {
InputStream in = new URL(urldisplay).openStream();
image = BitmapFactory.decodeStream(in);
} catch (Exception e) {
image = null;
}
return image;
}
protected void onPostExecute(Bitmap result) {
if (result != null) {
civ.setImageBitmap(result);
}
}
}
//or try use this
public Bitmap getBitmapFromURL(String src) {
try {
URL url = new URL(src);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.connect();
InputStream input = new BufferedInputStream(connection.getInputStream());
Bitmap myBitmap = BitmapFactory.decodeStream(input);
return myBitmap;
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
return null;
}
}
String url = "http://kenkma.freevnn.com/android_connect/getImage1.php?pid=118"
civ = (CircleImageView) findViewById(R.id.profile_image);
//With Image Loader lib
ImageLoader imageLoader = ImageLoader.getInstance();
imageLoader.init(ImageLoaderConfiguration.createDefault(MainActivity.this));
imageLoader.displayImage(url, civ);
//Or with Picasso lib
Picasso.with(MainActivity.this)
.load(url)
.placeholder(R.drawable.logo)
.error(R.mipmap.ic_launcher)
.into(civ);