نمایش نتایج 1 تا 6 از 6

نام تاپیک: مشکل در ارسال ناقص تصویر بصورت رشته به سرور

  1. #1
    کاربر دائمی آواتار samiasoft
    تاریخ عضویت
    مهر 1391
    محل زندگی
    اردبیل
    پست
    1,242

    Question مشکل در ارسال ناقص تصویر بصورت رشته به سرور

    سلام وقت بخیر

    میخواستم تصویری را از سی شارپ به سمت سرور اپلود کنم

    سمت سرور بدین صورت در php دستورات رو نوشتم :
    <?php $image=$_POST["image"];
    $file_name=date("Y-m-d-H-i-s");
    $target_dir = "uploads/";$target_file = $target_dir . $file_name.".jpg";
    if (file_put_contents($target_file, base64_decode($image))) {
    $status="ok";
    } else { $status="error"; }
    echo $status;
    ?>


    در سی شارپ هم تصویر رو بدین صورت به رشته تبدیل کردم :
    public string getStringImage(string Path)        {
    using (System.Drawing.Image image = System.Drawing.Image.FromFile(Path))
    {
    using (MemoryStream m = new MemoryStream())
    {
    image.Save(m, image.RawFormat);
    byte[] imageBytes = m.ToArray();


    // Convert byte[] to Base64 String
    string base64String = Convert.ToBase64String(imageBytes);
    return base64String;
    }
    }
    }


    و بدین صورت با متد post سمت سرور ارسال کردم :
    string img = getStringImage(@"E:\1.jpg");

    var request = (HttpWebRequest)WebRequest.Create("............... ./uploader.php");

    var postData = "image=" + img;


    var data = Encoding.ASCII.GetBytes(postData);


    request.Method = "POST";
    request.ContentType = "application/x-www-form-urlencoded";
    request.ContentLength = data.Length;


    using (var stream = request.GetRequestStream())
    {
    stream.Write(data, 0, data.Length);
    }


    var response = (HttpWebResponse)request.GetResponse();
    var responseString = new StreamReader(response.GetResponseStream()).ReadToE nd();


    اما متاسفانه تصویر اپلود شده بصورت ناقص اپلود میشه...یعنی حجمش کمتر از حجمی است که تصویر اولیه داره....موقع اجرا هم قسمتی از عکس نمایش داده میشه.

    من اومدم سمت سرور رشته ای که ارسال میشد رو echo کردم دیدم در رشته ای که ارسال کرده قسمت هایی که دارای کاراکتر + هست تبدیل به فاصله شده و به خاطرهمین هست که عکس ناقص نمایش داده میشه.
    بخاطرهمین فکر میکنم مشکل از کدهای سمت سی شارپ من باشه....نظری دارید در این باره؟

  2. #2
    کاربر دائمی آواتار samiasoft
    تاریخ عضویت
    مهر 1391
    محل زندگی
    اردبیل
    پست
    1,242

    نقل قول: مشکل در ارسال ناقص تصویر بصورت رشته به سرور

    اومدم سمت سرور همانطور که میگفتم بجای کاراکتر + با فاصله جایگزین میشد دوباره جایگزینش کردم :
     $image=str_replace(" ","+",$image);

    و الان به درستی اپلود شد....اما چرا اینطور جایگزین شده؟مشکل در تبدیل من هست ؟

  3. #3

    نقل قول: مشکل در ارسال ناقص تصویر بصورت رشته به سرور

    محتوا را از نوع application/base64 معرفی کنید. سمت پی اچ پی چک کنید ببینید درست میشه یا نه

  4. #4
    کاربر دائمی آواتار samiasoft
    تاریخ عضویت
    مهر 1391
    محل زندگی
    اردبیل
    پست
    1,242

    نقل قول: مشکل در ارسال ناقص تصویر بصورت رشته به سرور

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    محتوا را از نوع application/base64 معرفی کنید. سمت پی اچ پی چک کنید ببینید درست میشه یا نه
    ممنون از توجهتون

    متاسفانه در این حالت با اینکه خطایی هم نمیده اما عکس با حجم صفر اپلود میشه!
     request.ContentType = "application/base64";

  5. #5

    نقل قول: مشکل در ارسال ناقص تصویر بصورت رشته به سرور

    چون در url کاراکتر + به معنی کاراکتر space هست این اتفاق میفته. شما داده رو کد کنید که مشکلی پیش نیاد و در طرف php هم + دریافت بشه
    var postData = "image=" + System.Net.WebUtility.UrlEncode(img);

  6. #6
    کاربر دائمی آواتار samiasoft
    تاریخ عضویت
    مهر 1391
    محل زندگی
    اردبیل
    پست
    1,242

    نقل قول: مشکل در ارسال ناقص تصویر بصورت رشته به سرور

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    چون در url کاراکتر + به معنی کاراکتر space هست این اتفاق میفته. شما داده رو کد کنید که مشکلی پیش نیاد و در طرف php هم + دریافت بشه
    var postData = "image=" + System.Net.WebUtility.UrlEncode(img);
    درسته من این قسمت رو حواسم نبوده...متشکرم مشکل حل شد

تاپیک های مشابه

  1. نمایش ایمیل به صورت تصویر
    نوشته شده توسط mohammad-gh در بخش PHP
    پاسخ: 14
    آخرین پست: سه شنبه 13 آبان 1393, 19:43 عصر
  2. مشکل در زوم در تصویر ( بصورت تصویری )
    نوشته شده توسط shs1377 در بخش Android Studio
    پاسخ: 4
    آخرین پست: شنبه 18 مرداد 1393, 16:10 عصر
  3. پاسخ: 12
    آخرین پست: دوشنبه 25 شهریور 1392, 14:56 عصر
  4. دانلود صورت و تصویر از اینترنت
    نوشته شده توسط ahmadreza517 در بخش C#‎‎
    پاسخ: 5
    آخرین پست: جمعه 08 اردیبهشت 1391, 12:44 عصر
  5. پاسخ: 1
    آخرین پست: چهارشنبه 21 اردیبهشت 1390, 11:08 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •