• 0

مشكلة عدم عمل الملفات بعد تنزيلها في مشروع بيئة ASP.NET؟

السلام عليكم 

عملت مشروع رفع وتنزيل ملفات والحمد لله الكود يعمل بشكل سليم بلغة C# , ASP.NET

ولكن فيه مشكلة بسيطة لم استطع حلها رغم عدة محاولات وهي عند الضغط على تحميل الملف يقوم الكود بتنزيل الملف بنجاح ولكن عند فتح الملف ( لا يعمل نهائي) كملفات PDF وملفات DOCX وملفات الصور كـ JPG و JPEG ...الخ علما بأنه عند رفع الملفات تكون في صورة صحيحة 

 

كرماً .. حل وفقكم ربي 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

أجر اختبارًا بسيطًا.

انظر بدقة إلى حجم الملف قبل رفعه. ثم نزله وانظر إلى حجمه مرة أخرى هل هناك أي فرق؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0
بتاريخ 19 ساعات قال حسام برهان:

أجر اختبارًا بسيطًا.

انظر بدقة إلى حجم الملف قبل رفعه. ثم نزله وانظر إلى حجمه مرة أخرى هل هناك أي فرق؟

عند الرفع 88.7kb

عند التحميل 3.4kb

 

ما السبب ياغالي؟ وكيف حل المشكلة؟ 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

إذا كنت تستطيع استخدام المنقّح Debugging فأضف نقطة توقّف Break Point ضمن الشيفرة المسؤولة عن جلب الملف من قاعدة البيانات عندما يطلب المستخدم تنزيله. انظر إلى حجم الملف الذي تمّ جلبه من قاعدة البيانات هل هو 86.7 كيلو بايت؟

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

ماعندي خلفية عما ذكرت 

 

هل بتوضيح اكثر ياغالي؟

الاهم تجاوز المشكلة بأيسر السبل

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

هل تعرف استخدام المنقّح Debugger في Visual Studio؟

الأمر يسير جدًا.

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

اكتب الشيفرة المسؤولة عن جلب الملف من قاعدة البيانات.

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

انا اقوم بعد جلب البيانات من قاعدة البيانات باستعراضها في datagridvirew ثم اختار الملف المطلوب تحميله واضغط تحميل 

 

والف شكر لمساعدتك

errorasp.jpg

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

أحتاج إلى معرفة بنية الجدول TBL_Files (الحقول مع أنواعها).

يمكنك أخذ صورة للشاشة.

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

1- أنشئ ملف نصي بسيط اسمه simple.txt واكتب فيه الكلمة التالية: Hello ثم احفظه.

2- ارفع الملف ثمّ تأكّد أنّه موجود على السيرفر ضمن المسار:

~//Files//simple.txt

3- نزّل الملف simple.txt وحاول فتحه. إذا نجحت بفتحه فما هي محتوياته؟

 

أرجو تنفيذ الخطوات الثلاث السابقة، وإعطائي وصف دقيق عن ملاحظاتك حول كل خطوة.

 

تمّ تعديل بواسطة حسام برهان

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

هلا بالغالي

 

طبقت ما ذكرته 

عند تنزيل الملف وفتحه ( وجدت كود html ومجموعة اكواد كثيرة ) 

هل تحب أن أطلعك عليها؟ 

Update

 

xxx.jpg

update

لللل.jpg

تمّ تعديل بواسطة عبدالله الناصري
خطأ املائي

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

اهلا اخي

احتاج الى وصف دقيق لما طلبته منك في البنود الثلاث السابقة فحسب كي استطيع تشخيص المشكلة بدقة.

على العموم يبدو ان الشيفرة التي تستخدمها غير صحيحة (كنظرة اولية)

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0
بتاريخ 4 ساعات قال حسام برهان:

اهلا اخي

احتاج الى وصف دقيق لما طلبته منك في البنود الثلاث السابقة فحسب كي استطيع تشخيص المشكلة بدقة.

على العموم يبدو ان الشيفرة التي تستخدمها غير صحيحة (كنظرة اولية)

1- اعدت تسمية الملف sample.text

2- قمت برفعه 

3- قمت بالتحميل وفي المرفق نتيجة التحميل

---Files--__2017210235342.txt

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

أخي الكريم. لقد غيرت امتداد الملف الذي أرفقته إلي وجعلته html. ظهر الملف ضمن المتصفح كما في المرفق والذي يمثل كما أظن صفحة التحميل الرئيسية لتطبيقك.

على ما يبدو أنّك لا تحفظ الملف ضمن قاعدة البيانات. إنما الذي تحفظه هو صفحة التحميل نفسها وهذا خطأ بالطبع.  

 

Capture.PNG

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0
بتاريخ 1 دقيقة مضت قال حسام برهان:

أخي الكريم. لقد غيرت امتداد الملف الذي أرفقته إلي وجعلته html. ظهر الملف ضمن المتصفح كما في المرفق والذي يمثل كما أظن صفحة التحميل الرئيسية لتطبيقك.

على ما يبدو أنّك لا تحفظ الملف ضمن قاعدة البيانات. إنما الذي تحفظه هو صفحة التحميل نفسها وهذا خطأ بالطبع.  

 

Capture.PNG

اخ حسام وفقك الله 

اذا رفعت الملف يظهر لي في قاعدة البيانات كما هو 

ولكن عند تحميله هنا الاشكالية 

 

بصراحة لا اعلم ما السبب !

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

يعني عندما رفعت الملف simple.txt إلى السيرفر وجربت فتح الملف على السيرفر هل نجحت بفتحه وظهرت لك الكلمة Hello ؟

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0
بتاريخ 7 دقائق مضت قال حسام برهان:

يعني عندما رفعت الملف simple.txt إلى السيرفر وجربت فتح الملف على السيرفر هل نجحت بفتحه وظهرت لك الكلمة Hello ؟

 

بالتأكيد ، لا 

اقصد قمت بفتحه ولكن ظهر نص html واكواد أخرى 

اما كلمة hello فلم اجدها

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

هذا دليل ان الكود المسؤول عن رفع الملف غير صحيح. ادرج الكود المسؤول عن الرفع

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0
protected void btn_upload_Click(object sender, EventArgs e)
        {
            // check txt file before uploading
            if (txt_title.Text=="")
            {
                lbl_message_page.Text = "File Name Should Be Inserted";
                txt_title.Focus();
                return;
            }

            // generate random number (ID in database)
            string num = "0123456789";
            int lenght = num.Length;

            string otp = string.Empty;

            int otpdigit = 5;
            string finaldigit;
            int getindex;
            for (int i = 0; i < otpdigit; i++)

            {
                do
                {
                    getindex = new Random().Next(0, lenght);
                    finaldigit = num.ToCharArray()[getindex].ToString();
                } while (otp.IndexOf(finaldigit) != -1);
                otp += finaldigit;

            }
            txt_reg_file.Text = otp;
            //End Of Generate Random Numbers-----------------------------------------------------------------

            // Started Upload Files :
            if (FileUpload1.HasFiles)
            {
                string ext = System.IO.Path.GetExtension(FileUpload1.FileName);
                if (ext!=".pdf" && ext!=".docx" && ext !=".doc" && ext!=".text" && ext !=".jpg" && ext!=".txt")
                {
                    lbl_message_page.ForeColor = Color.Red;
                    lbl_message_page.Text = "File you would uploaded not supported";
                    return;
                }
                string FileName = string.Empty; 
                FileName = FileName.ToString() + "_";
                FileName = FileName + DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString();
                FileName += DateTime.Now.Hour.ToString();
                FileName += DateTime.Now.Minute.ToString();
                FileName += DateTime.Now.Second.ToString();

                FileUpload1.SaveAs(Server.MapPath("Files") + "//" + FileName + ext);
                string path = "~//Files//"+FileName+ext;

                string sql_upload_file = "INSERT INTO TBL_Files (File_ID,File_Title,File_Upload_Date,File_Path,File_Downloads) VALUES (@File_ID,@TITLE,@FILEUPDATE,@FPATH,@FILEDOWNS)";

                SqlCommand cmd = new SqlCommand(sql_upload_file, sqlcon);
                cmd.Parameters.AddWithValue("@File_ID", txt_reg_file.Text);
                cmd.Parameters.AddWithValue("@TITLE", txt_title.Text);
                cmd.Parameters.AddWithValue("@FILEUPDATE", DateTime.Now);
                cmd.Parameters.AddWithValue("@FPATH", path);
                cmd.Parameters.AddWithValue("@FILEDOWNS", 0);

                sqlcon.Open();
                cmd.ExecuteNonQuery();
                sqlcon.Close();
                lbl_message_page.ForeColor = Color.Green;
                lbl_message_page.Text = String.Format("{0} file has been uploaded successfully.", FileUpload1.PostedFiles.Count);
                lbl_file_type.Text +=FileUpload1.FileName;

              //  lbl_message_page.Text = "Data has been saved successfully";
            }
            else
            {
                lbl_message_page.ForeColor = Color.Red;
                lbl_message_page.Text = "not Uploaded !";
            }
        

 

تمّ تعديل بواسطة عبدالله الناصري

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

الحقيقة لم أستطع تحديد المشكلة في هذا الكود. أحتاج إلى الحصول على نسخة من المشروع - على الأقل من صفحة التحميل مع الشيفرة الخاصة بها.

 

تمّ تعديل بواسطة حسام برهان

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن