عندما تقوم بتسجيل الدخول عبر الإنترنت، غالبًا ما ترى رمز التحقق الذي يطلب منك إدخاله، وبعضه نص وبعضه صور. على سبيل المثال، عندما تترك رسالة في دليل خريجي chinaren.com، فسوف نقوم بذلك راجع رمز التحقق من الصورة الرقمية عبر الإنترنت هناك الكثير من المعلومات حول كيفية تنفيذ رموز التحقق من النص الرقمي، وما نقدمه هنا هو كيفية تنفيذ رموز التحقق التي تتكون بشكل عشوائي من أرقام وحروف وتوليد الصور. يبدو الأمر معقدًا، لكنه في الواقع بسيط جدًا. تابعني وتابع القراءة:
أولاً، دعنا نقدم فكرة التصميم. مجموعة عشوائية من الأرقام والحروف تولد رمز التحقق، ثم تولد صورة لرمز التحقق هنا، إذا كانت خاصة رمز التحقق الرقمي، ويمكن تحقيق ذلك على النحو التالي:
ycodenum=4 'عدد الأرقام في رمز التحقق، أو رقمًا
لأني = 1 إلى ycodenum
Randomize 'تهيئة مولد الأرقام العشوائية
ycode=ycode&Int((9*Rnd)) 'rnd هو رقم عشوائي، أي رقم حقيقي بين 0 و1، هنا تحصل على عدد صحيح بين 0 و9
التالي
سوف يقوم Response.write ycode بإخراج رمز التحقق الرقمي (4 أرقام)
ومع ذلك، نريد أن يتم إنشاء الأرقام والحروف بشكل عشوائي، وهنا يمكننا استخدام مصفوفة لتحقيق هذا التأثير، على النحو التالي:
ychar="0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N ,O,P,Q,R,S,T,U,V,W,X,Y,Z" 'دمج الأرقام والأحرف الكبيرة في سلسلة
yc=split(char,") 'إنشاء سلسلة في صفيف
يوكونوم = 4
لأني = 1 إلى ycodenum
عشوائية
ycode=ycode&yc(Int((35*Rnd))) 'تبدأ المصفوفات عمومًا في القراءة من 0، لذا هنا 35*Rnd
التالي
استجابة.اكتب ycode
الآن دعونا نرى ما إذا كان الناتج عبارة عن مجموعة عشوائية من الأرقام والحروف؟
دعونا نلقي نظرة على كيفية إنشاء الصور، وقد يعرف بعض الأصدقاء هذا: لا يمكن لـ ASP إنشاء صور، ويجب استخدام مكونات ASP. نعم، نحن نستخدم هنا صورة مكون صورة ASP. شيء واحد يجب على الجميع الانتباه إليه هو أنه لا يمكنك استخدام الخادم إذا لم يكن خاصًا بك، لأنه لا يمكنك تثبيت هذا المكون.
تنزيل عنوان المكون: yc=split(char,") 'إنشاء سلسلة في صفيف
يوكونوم = 4
لأني = 1 إلى ycodenum
عشوائية
ycode=ycode&yc(Int((35*Rnd))) 'تبدأ المصفوفات عمومًا في القراءة من 0، لذا هنا 35*Rnd
التالي
الاستجابة.واضحة
Response.ContentType = "صورة/gif"
تعيين obj=Server.CreateObject("shotgraph.image")
x=55 'عرض الصورة
y=26 'ارتفاع الصورة
obj.CreateImage x,y,8 '8 هو لون الصورة بـ 8 بت
obj.SetColor 0,55,126,222
obj.SetColor 1,255,255,255
obj.CreatePen "PS_SOLID"،1،0
أوبج.سيتبجكولور 0
obj.المستطيل 0,0,x-1,y-1
obj.SetBkMode "شفاف"
obj.CreateFont "Arial"، 136،18،1، خطأ، خطأ، خطأ، خطأ
obj.SetTextColor 1
obj.TextOut 5,4,ycode&" "
img=obj.GifImage(-1,1،"")
استجابة.BinaryWrite(img)
للتعرف على الكود أعلاه، أي مبدأ الرسم العادي للرسم البياني، يرجى الرجوع إلى: http://www.pconline.com.cn/pcedu/empolder/wz/asp/10204/45207.html