PDA

View Full Version : مشکل با نمایش عکس



shabgardetanha
شنبه 15 آبان 1395, 22:00 عصر
سلام برا استخراج عکس از بانک و نمایش در اندروید در اکیلیپس در سمت سرور این کد رو دارم

if (isset($_GET["password"])) {
$password = $_GET['password'];

$result = mysql_query("SELECT * FROM user WHERE password = $password");

if (!empty($result)) {
// check for empty result
if (mysql_num_rows($result) > 0) {

$result = mysql_fetch_array($result);

$book = array();
$book["password"] = $result["password"];
$book["image"] = base64_encode($result["image"]);

// success
$response["success"] = 1;

// user node
$response["book"] = array();

array_push($response["book"], $book);


echo json_encode($response);
} else {
// no product found
$response["success"] = 0;
$response["message"] = "No book found";

// echo no users JSON
echo json_encode($response);
}
} else {

$response["success"] = 0;
$response["message"] = "No book found";


echo json_encode($response);
}
} else {

$response["success"] = 0;
$response["message"] = "Required field(s) is missing";


echo json_encode($response);
}
?>

خروجیم اینه
{"success":1,"book":[{"password":"123","name":"ali","image":"MjE3MGZmY2EwNGIxZTIyYjNkNDUwY2NjNDcyYzY0YWUuanBj"}]}
و در اندروید اینو نوشتم
protected void onPostExecute(JSONObject json) {

// json success tag
int success = 0;
try {
success = json.getInt(TAG_SUCCESS);
} catch (JSONException e3) {
// TODO Auto-generated catch block
e3.printStackTrace();
}
if (success == 1) {

JSONArray bookObj = null;
try {
bookObj = json.getJSONArray(TAG_book);
} catch (JSONException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
} // JSON
// Array


JSONObject book = null;
try {
book= bookObj.getJSONObject(0);
} catch (JSONException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
ImageView image=(ImageView)findViewById(R.id.imageView1);
try {
img1 = book.getString(TAG_IMAGE);
} catch (JSONException e) {

e.printStackTrace();
}
byte[] encodeByte = Base64.decode(img1, Base64.DEFAULT);
Bitmap bitmap = BitmapFactory.decodeByteArray(encodeByte, 0, encodeByte.length);
image.setImageBitmap(bitmap);
اما در اجرا هنگام رسیدن به این خط
image.setImageBitmap(bitmap);

خطا میگیره و برنامه بسته میشه اینم خطای لوک کت هست
E/AndroidRuntime(1723): FATAL EXCEPTION: main
E/AndroidRuntime(1723): java.lang.NullPointerException
E/AndroidRuntime(1723): at com.example.mb_ab.Login$GetbookDetails.onPostExecu te(Login.java:233)
E/AndroidRuntime(1723): at com.example.mb_ab.Login$GetbookDetails.onPostExecu te(Login.java:1)
E/AndroidRuntime(1723): at android.os.AsyncTask.finish(AsyncTask.java:602)
E/AndroidRuntime(1723): at android.os.AsyncTask.access$600(AsyncTask.java:156 )
E/AndroidRuntime(1723): at android.os.AsyncTask$InternalHandler.handleMessage (AsyncTask.java:615)
E/AndroidRuntime(1723): at android.os.Handler.dispatchMessage(Handler.java:99 )
E/AndroidRuntime(1723): at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime(1723): at android.app.ActivityThread.main(ActivityThread.jav a:4424)
E/AndroidRuntime(1723): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(1723): at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime(1723): at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:784)
E/AndroidRuntime(1723): at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:551)
E/AndroidRuntime(1723): at dalvik.system.NativeStart.main(Native Method)
درضمن ادرس عکس رو در بانک ذخیره کردم و در یک پوشه عکس ها رو قرار دادم

ممنون میشم کمک کنید

shabgardetanha
یک شنبه 16 آبان 1395, 10:56 صبح
دوستان کسی نیست کمکم کنه؟؟؟
خواهش...

rezaricky
دوشنبه 17 آبان 1395, 15:44 عصر
سلام . یکی از ابجکت های image یا bitmap
null هست . حطا برای اونه . ببینید کدومشونه

shabgardetanha
سه شنبه 18 آبان 1395, 10:17 صبح
ممنونم
فقط متوجه نشدم
ميشه بگید دقیقا چکار کنم؟؟؟
ممنون میشم
خواهش...

rezaricky
سه شنبه 18 آبان 1395, 10:31 صبح
یک چیزی شبیه این :


if ( image == null) {
Toast.makeText(MainActivity.this,"image is null",Toast.length_long).show();
}


if (bitmap == null) {
Toast.makeText(MainActivity.this,"bitmap is null",Toast.length_long).show();
}


if (image != null && bitmap != null ) {
image.setImageBitmap(bitmap);
}