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

UploadFile والإسم التسلسلي

بدأه AboMoayad في 6 ديسمبر 2009 · 8 رد · 689 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لدي كود تحميل ملفات ويعمل جيدا لكن أريد تعديل الكود بحيث يعطي رقم تسلسلي لأسماء الملفات

وهذا الكود ..

Try
            Dim strGuid As String = ""
            Dim strDocExtension As String = ""
            Dim strFileName As String = ""
            If CVUpload.HasFile Then

                strGuid = fnGuid()
                strDocExtension = fnGetDocumentExtension(CVUpload.FileName)
                strFileName = strGuid & strDocExtension


                subAddNewDocument(CVUpload, strFileName, "CV")

                lblUploadMessage.Text = "تم تحميل الملف بنجاح .."
            Else
                lblUploadMessage.Text = "اختار الملف للتحميل .."
            End If

            lblUploadMessage.Visible = True
        Catch ex As Exception
            Throw ex
        End Try

تم تعديل هذه المشاركة بواسطة مبرمج القاعده في 6 ديسمبر 2009 في 14:32

اللهم أطل عمري وأحسن عملي واختم بالشهادة أجلي

#2

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

ابحث في هذا القسم وستجد كود قد كتبته منذ فترة طويلة لرفع الملفات ما اعطاء إسم فريد لكل ملف

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

#3

حصلت على الكود أستاذي , لكن تسمية الملفات عشوائيا وأنا أريد أرقام تسلسلية

اللهم أطل عمري وأحسن عملي واختم بالشهادة أجلي

#4

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

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

اما اذا اصررت على ماتريد فهو كما يلي :

اولا من الاسهل استخدام ارقام لها نفس الطول اي نضع اصفار على الشمال مثلا (00001) وبغير ذلك اعتقد انه من الصعب الحصول على آخر رقم .

        Dim FileFolder As String = "c:\" 'غيرها للمكان المناسب 
        Dim fileEntries() As String = Directory.GetFiles(FileFolder) 'ضع الخيارات المناسبة
        Array.Sort(fileEntries) 'رتب للحصول على اكبر رقم

        Dim FI As New FileInfo(fileEntries(fileEntries.Length - 1)) 'نحصل على آخر ملف
        Dim sNewFileName As String
        If IsNumeric(FI.Name) Then ' عليك بازالة امتداد الملف ان وجد
            'اضف واحد لآخر ملف وضع 5 اصفار على شمال الملف
            sNewFileName = (Integer.Parse(FI.Name) + 1).ToString.PadLeft(5, CChar("0"))
        End If
#5

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

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

ولكن إذا كان الترتيب ضروريا فيجب مراعاة حالات الحذف

فمثلا لو تم حذف الملف الخامس فسيكون الترتيب غير صحيح

File001

File002

File003

File004

File006

File007

وهنا يجب عليك إعادة تسمية الملفات ابتداء من الملف الرابع وحتى النهاية لكي تكون السلسلة صحيحة

فياريت تشرح فكرتك فربما تكون هناك حلول أفضل

بالتوفيق

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

#6

أشكر الأخوة الأفاضل على ردهم , أعتمد على طريقة الرقم التسلسلي من جدول فيه حقل Autonumber

واشتغل البرنامج على Local لكن بعد التحميل على الموقع أعطاني رسالة خطأ .كما هو موضح بالصورة.

اللهم أطل عمري وأحسن عملي واختم بالشهادة أجلي

#7

السلام عليكم

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

  • البحث في لوحة تحكم الموقع عن كيفية اعطاء الصلاحيات ان وجدت .
  • محاولة نقل المجلد الى داخل App_data فعلى الاغلب توجد هناك صلاحيات للكتابة
  • الاتصال بالدعم الفني للموقع لاعطاء الصلاحيات
#8

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

حصلت المشكلة معي هذي قبل كذا وكان يعمل على جهازي بدون مشكلة

ولما رفعته على الإستضافة كان نفس الرسالة التالية تظهرلي وحليتها كالتالي

"~" بعد العلامة هذي حط //

بدل /

أتمنى أن أكون أفدتك

#9

استاذ ( محمد vb ) فعلت ما قلته ونفس رسالة الخطأ ..

ويصبح الكود كالتالي ..

Dim UploadFilePath As String

UploadFilePath = Server.MapPath("~//CV")

(هنا سطر الخطأ ) CVUpload.SaveAs(((UploadFilePath & "//") + LastMealID & ".") + FileNameExtensionOnly)

lblGuid.Text = LastMealID

وطبقت طريقة الأستاذ Tareq غيرت المجلد الى app_Data ونجحت ... بارك الله فيكم

تم تعديل هذه المشاركة بواسطة مبرمج القاعده في 10 ديسمبر 2009 في 01:53

اللهم أطل عمري وأحسن عملي واختم بالشهادة أجلي

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