الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة مع ajax file upload اريد منع رفع الملفات المكررة ؟

بدأه red_scorpion1 في 2 مارس 2013 · 2 رد · 783 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

 

قمت بتصميم صفحة لرفع الملفات وقمت بوضع الاداه ajax file upload وهى تعمل بشكل ممتاز

 

ولكنى اريد عدم رفع الملف اذا كان هناك اخر موجود بنفس الاسم واظهار ما يدل على ذلك فى lblmsg.text ولكن باءت جميع محاولاتى بالفشل فهل من حل جزاكم الله خيرا

 

        protected void AjaxFileUpload1_UploadComplete(object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e)
        {
            var full_path = Server.MapPath((String.Format("~/Images/pt_img/{0}/{1}", Session["pt_id"], Path.GetFileName(e.FileName))));
           
            if (!File.Exists(full_path))
                {
                    AjaxFileUpload1.SaveAs(full_path);

                    var cn = new SqlConnection(cs);
                    var cm = new SqlCommand("add_pt_img", cn) { CommandType = CommandType.StoredProcedure };
                    cm.Parameters.Add("@pt_id", SqlDbType.Int).Value = Session["pt_id"].ToString();

                    // Save Image Name Only
                    cm.Parameters.Add("@img_name", SqlDbType.NVarChar, 150).Value = Path.GetFileName(e.FileName);

                    cn.Open();
                    cm.ExecuteScalar();
                    lblMsg.ForeColor = System.Drawing.Color.Yellow;
                    lblMsg.Text = "Patient Image Saved Successfully";
                    cn.Close();
                }
                else
                {
                    lblMsg.Text = "File exists!!!";
                    return;
                }

          }

تم تعديل هذه المشاركة بواسطة red_scorpion1 في 2 مارس 2013 في 05:59

#2

السلام عليكم ورحمة الله وبركاته

أخي...

المتغير full_path يجب أن يحتوي على مسار الملف بالإضافة إلى اسمه

مثال:

 

 

string full_path = Server.MapPath("~/Images/pt_img/");
            if (!File.Exists(full_path + FileUpload1.FileName))
                {
                FileUpload1.SaveAs(full_path + FileUpload1.FileName);
               // Save to database
                }
            else
                Label1.Text = "Uploading Failed";

إذا أردت أن تـجـعـلـنـي سـعـيـداً ... فـعـلـمـنـي شـيـئـاً جـديـداً

#3

لا اعلم ان كان كلامي صحيحا ام لا ولكن جرب ان تضع اسم الملف في قاعدة البيانات Primary Key وعند الرفع سيتم الرفض ان تكرر الاسم 

مجرد فكرة لا اكثر 

مواضيع مشابهة