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

طريقة عمل upload لملف في asp.net

بدأه rauf911 في 8 مايو 2011 · 47 رد · 2,807 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

أخواني الأعزاء لدي استفسار بخصوص تحميل ملفات على الموقع

لقد قمت بإستخدام كود لعمل upload أو attach للملفات ولكن كانت هناك خطأ يحدث لا أعلم ما معناه وهو كالتالي:

اقتباس

If FileUpload1.HasFile Then

Try

_ & "\FileUpload1.SaveAs("C:\Uploads

(FileUpload1.FileName

_&" :Label1.Text = "File name

_&"<FileUpload1.PostedFile.FileName & "<br

_ & ":File Size"

_& "<FileUpload1.PostedFile.ContentLength & " kb<br

_&":Content type"

FileUpload1.PostedFile.ContentType

Catch ex As Exception

()Label1.Text = "ERROR: " & ex.Message.ToString

End Try

Else

".Label1.Text = "You have not specified a file

End If

والخطأ الذي كان يحدث هو كالتالي:

ERROR: Could not find a part of the path 'C:\Uploads\هـــــام.txt'.

فما هو معنى الخطأ وكيف أستطيع عمل upload للملفات كملفات txt & rar & word & excel

أرجو مساعدتي يا أخوان مشكورين مع العلم أن اللغة التي استخدمها vb.net وقاعدة البانات access

وجزاكم الله خيراً.....

تم تعديل هذه المشاركة بواسطة rauf911 في 8 مايو 2011 في 16:07

#2

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

تأكد من وجود المجلد في المسار المحدد أعلاه ...

.:: Wish to become better and better ::.

#3

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

جرب الكود التالي


fu.SaveAs(String.Format("{0}/{1}", Server.MapPath("Uploads"), fu.PostedFile.FileName))

.:: Wish to become better and better ::.

#4

أخي الكريم

جزاك الله خير

ولكن اخي الكريم

أين أضع هذا الكود؟؟وفي أي مكان من خلال الكود أعلاه؟؟؟؟

أو هل أقوم بإستبدال كامل الكود الذي قمت انا بكتابته بهذا الكود؟؟؟

#5

جزاك الله خير أخي الكريم

لقد قمت بوضع الكود الذي قمت بإعطائي اياه

بدل هذا الكود

_ & "\FileUpload1.SaveAs("C:\Uploads

ولكن قام بكتابة التالي في label

ERROR: The given path's format is not supported.

هل المقصود بذلك أنه لايدعم الملف الذي تم تحميله؟؟

لقد قمت بمحاولة تحميل ملف mp3 وكذلك Txt ولكن قام بإعطائي نفس الرسالة

#6

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

اخي هل قمت بوضع \ بعد المجلد Uploads؟؟؟

شوف الرابط ده http://msdn.microsoft.com/en-us/library/aa479405.aspx بس تأكد من وجود مجلد الرفع؟!!

تم تعديل هذه المشاركة بواسطة VB Helper في 9 مايو 2011 في 00:55

.:: Wish to become better and better ::.

#7

جزاك الله خيرا يا أخي الكريم

بالنسبة للرابط الموجود

هو نفس الرابط اللي نسخت منه الكود

أما بخصوص مجلد الرفع فبعد أن اقوم باختيار احد الملفات من جهاز الكمبيوتر

فإن النص الذي يظهر في مربع النص الخاص بالملف.

C:\Documents and Settings\abdulrauf.Sami\Desktop\هـــــام.txt

C:\Documents and Settings\abdulrauf.SAMI\Desktop\هـــــام.txt

فهل هذا ما تقصده

تم تعديل هذه المشاركة بواسطة rauf911 في 9 مايو 2011 في 08:02

#8

Ch6 10.zip

اخوي هذا مثال جاهز خلي في بالك ان ملفات التكيكست ما تنرفع الا اذا مكتوب فيها شي ok

تم تعديل هذه المشاركة بواسطة هيرودس في 9 مايو 2011 في 08:02

#9

أخي الكريم جزاك الله خير

ولكن قمت بعمل الموجود في الملف المرفق

ولكن هنالك خطأ يظهر

الكود:

اقتباس

If FileUpload1.HasFile Then

Dim path As String = Server.MapPath("~/Documents/" + FileUpload1.FileName)

Dim ext As String = System.IO.Path.GetExtension(FileUpload1.FileName)

If ext = ".txt" Then

FileUpload1.SaveAs(path)

Response.Write(FileUpload1.FileName + "<br />")

Response.Write(FileUpload1.PostedFile.FileName + "<br />")

Response.Write(FileUpload1.FileContent.Length + "<br />")

Response.Write(FileUpload1.PostedFile.ContentLength + "<br />")

Else

Response.Write("Not Allowed")

End If

Else

Response.Write("Browse first then upload")

End If

والخطأ هو التالي:

Could not find a part of the path 'C:\Documents and Settings\abdulrauf.SAMI\Desktop\نسخة برنامج الدعم الفني 23-4-2011\Documents\عقار.txt'.

تم تعديل هذه المشاركة بواسطة rauf911 في 9 مايو 2011 في 08:45

#10

عدل المسار

#11

يا أخي الكريم أنا ليست لددي الخبرة الكبيرة في هذا الموضوع لذلك استفسر عنه

لم افهمك بالتحديد ما هو المقصود بالمسار الذي اقوم بتعديله؟؟؟؟

هل هناك خطأ في الكود المكتوب؟؟؟

أرجو افادني وجزاكم الله خيراً

#12

اسف اخوي مايحتج تعدل على المسار

سؤال انت تشتغل على اي فريم ورك انا استخدم الرابع

ابكتب الكود ok

if (uplfile.HasFile)
        {
            string path = Server.MapPath("~/Documents/" + uplfile.FileName);

            string ext = System.IO.Path.GetExtension(uplfile.FileName);

            if (ext == ".txt")
            {
                uplfile.SaveAs(path);
                Response.Write(uplfile.FileName + "<br />");
                Response.Write(uplfile.PostedFile.FileName + "<br />");
                Response.Write(uplfile.FileContent.Length + "<br />");
                Response.Write(uplfile.PostedFile.ContentLength + "<br />");
            }
            else
                Response.Write("Not Allowed");
        }
        else
            Response.Write("Browse first then upload");

اكتب داخل الحدث ok

اخوي حمل برنامج تيم فيور وشغله وارسل لي على الخاص اسم المستخدم والباسوورد ok

تم تعديل هذه المشاركة بواسطة هيرودس في 9 مايو 2011 في 09:09

#13

أخي الكريم جزاك الله خير

أشكر لك اهتمامك

للأسف لا استطيع ان احمل برنامج التيم فيور انا في شركة معقدة بعض الشئ

والتحميل ممنوع بأي شكل

بالنسبة للفريم ورك لدي انا استخدم 3.5

#14

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

اخي سويت لك مثال كامل لتوضيح الفكره ..

FileUpload.zip

.:: Wish to become better and better ::.

#15

أخي الكريم جزاك الله خير

والله لقد عجز وكلما حاولت كلما عجزت اكثر

لقد قمت بعمل المثال المرفق بحذافيره وقام بكتابة الخطأ التالي:

Error occur during uploading!!

وهناك رسالة تظهر على الكود:

Catch ex As Exception

مكتوب بها

The given path's format is not supported.

#16

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

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

String.Format("{0}\{1}", Server.MapPath("Uploads"), FileUpload1.PostedFile.FileName)

.:: Wish to become better and better ::.

#17

جزاك الله خيراً أخي الكريم

ليس ما اقصده هو اليأس بالتحديد

ولكن لا أحب أن اتعب احد معي بلا فائدة ...والعيب بكل تأكيد مني ....فأنتم تتابعون مشكلتي وتحاولون أن تجدو لي الحلول وتجهدون انفسكم بسببي...فكل ما اتمناه أن استطيع الاستفادة من توجيهاتكم

على العموم يا اخي الكريم

ان ناتج الكود :

String.Format("{0}\{1}", Server.MapPath("Uploads"), FileUpload1.PostedFile.FileName)

هو التالي:

"C:\Documents and Settings\abdulrauf.SAMI\Desktop\الدعم الفني 23-4-2011\Uploads\C:\Documents and Settings\abdulrauf.SAMI\My Documents\مطبوعات.doc"

وجزاكم الله خيراً

تم تعديل هذه المشاركة بواسطة rauf911 في 9 مايو 2011 في 14:28

#18

بسم الله الرحمن الرحيم

اخى العزيز رؤوف

ان شاء الله تكون بخير و بصحة جيدة يارب

غير السطر ده

FileUpload1.SaveAs(String.Format("{0}\{1}", Server.MapPath("Uploads"), FileUpload1.PostedFile.FileName))

بده

FileUpload1.SaveAs(Server.MapPath("Uploads\" & "اسم الملف اللى انت عاوزه بالامتداد بتاعه"))

جرب و ان شاء الله يظبط معك

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

#19

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

اخي متأكد؟!! لأن المفروض يطلع اسم الملف المرفوع بعد مجلد الرفع, مش مساره الكامل!! طيب ممكن تسوي ملف في القرص D: مثلا وخبرني اذا تم رفعه ولا لا ...

.:: Wish to become better and better ::.

#20

جزاك الله خير أخي العزيز bodaman

يارب تكون بخير وبصحة وعافية

بخصوص الكود الذي أعطيتني اياه

FileUpload1.SaveAs(Server.MapPath("Uploads\" & "اسم الملف اللى انت عاوزه بالامتداد بتاعه"))

كيف أضع الملف الذي اريده في كل مره بعد upload أي بمعني أنه ليس ملف واحد الذي استخدمه .

خاصه واني استخدم الاداة file Upload .

#21

بسم الله الرحمن الرحيم

اخى العزيز

"اسم الملف اللى انت عاوزه بالامتداد بتاعه"))

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

اما لو عاوزه هو يجيبها مرة واحدة من غير ما تكتبها انت ممكن تستخدم الكود ده

FileUpload1.SaveAs(Server.MapPath("Uploads\" & Path.GetFileName(FileUpload1.FileName)))

ده هيسمى اسم الملف الجديد بنفس الاسم بتاع الملف اللى انت اخترته للرفع

بس لازم تعمل imports لل System.IO فى قسم التصاريح

كده يعنى

Imports System.IO
#22

أخي الكريم VB helper

لقد قمت بالتجربة

وكان الناتج هو:

"C:\Documents and Settings\abdulrauf.SAMI\Desktop\نسخة برنامج الدعم الفني 23-4-2011\Uploads\E:\british_flag.jpg"
#23

بجد ألف ألف شكر يا شباب خلاص الحمدلله زبط الكود

المشكلة كانت في السيرفر بتاع الشركة كان مقفول من قسم الIT

ألف شكر لـ VB Helper و صديقي وأخي bodaman

بجد تعبتكم معايه

والله يعطيكم ألف عافية

تم تعديل هذه المشاركة بواسطة rauf911 في 9 مايو 2011 في 15:41

#24

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

اخي بالنسبه للحل الذي قدمه bodaman هو نفس حلي بس قام باستخدام المعامل &

طيب اخ روؤف مبروك اذا ضبط .. بس ممكن تقولي كيف وليش ضبط لأن كودي السابق شغال 100%

.:: Wish to become better and better ::.

#25

أخي الكريم VB Helper

أنا جربت الكود تبعك وجربت الكود بتاع الأخ Bodaman

والاتنين اشتغلو 100% بعد ما زبطت السيرفر عندنا في الشركة

الأكواد جميعها صحيحة بس المشكلة كانت من عندي

سامحوني يا اخوان عشان تعبتكم معايه

فجزاكم الله خيراً انتم الاتنين

عملتو اللي عليكم معايه واكتر

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