في apollosun
سواء كان ذلك مكونًا أو غير مكون. يرجى قراءة الكود التالي بعناية، طالما أنك تفهم الكود، يمكنك فهمه.
هنا، بأخذ تحميل مكون ASPUPLOAD كمثال،
الوظائف الرئيسية الثلاثة التالية هي:
وظيفة killext(byval s1) 'إزالة ملحقات الملفات غير القانونية
السماح خافت
allowext=".JPG,.JPEG,.GIF,.BMP,.PNG,.SWF,.RM,.MP3,.WAV,.MID,.MIDI,.RA,.
AVI،.MPG،.MPEG،.ASF،.ASX،.WMA،.MOV،.RAR،.ZIP،.EXE،.DOC،.XLS،.CHM،.HLP،.PDF"
s1=ucase(s1)
إذا لين (s1) = 0 ثم
قتل النص =""
آخر
إذا لم يكن chk (allowext، s1، "،") ثم
Killext = ".القرف"
آخر
Killext=s1
نهاية إذا
نهاية إذا
النهاية
chk(byval s1,byval s2,byval fuhao) 'تأكد من أن السلسلة تحتوي على
ديمي، أ
chk=false
أ = انقسام (s1، فوهاو)
لأني = 0 إلى Ubound(a)
إذا تقليم (أ (i)) = تقليم (s2) إذن
chk=true
الخروج ل
نهاية إذا
التالي
النهاية
gname (byval n1) 'إنشاء أسماء الدليل والملفات تلقائيًا بناءً على التاريخ، تقوم المعلمة 1 بإنشاء الدليل، وتقوم المعلمة 2 بإنشاء اسم الملف (بدون لاحقة)
خافت ر، ص
ر = الآن ()
عشوائي (المؤقت)
ص=كثافة العمليات((rnd+1-1)*9999)
حدد الحالة n1
الحالة 1
gname=year(t)&right("00"&month(t),2)&right("00"&day(t),2)
الحالة 2
gname=right("00"&hour(t),2)&right("00"&دقيقة(t),2)&right("00"& Second(t),2)&right("0000"&r,4)
حدد النهاية
طريقة استدعاء
الوظيفة النهائية
:dim oup,ofile,ext,myfile
Set oup = Server.CreateObject("Persits.Upload")
oup.SetMaxSize 10000000، صحيح
استدعاء oup.Save() 'يتم تحميل هذا إلى ذاكرة الخادم، ولا يتم إنشاء ملف فعلي.
مجموعة ofile = oup.files(1)
ext=killext(ofile.ext)
myfile = "/" & ganme (1) & "/" & gname (2) & استدعاء
تحويلة ofile.saveas (server.mappath (myfile))
ملاحظة إضافية:
إذا استخدم أحد المتسللين nc لتحميل ملفات غير قانونية، فإن الملفات النهائية التي يحصلون عليها هي مجرد
ملفات "تافهة" مثل
200511051234559103.shit
!