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

طريقة عمل كود تأكيد من حروف و ارقام

بدأه SamDev في 8 أغسطس 2010 · 4 رد · 1,339 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

السلام عليكم

قد نحتاج الى كود تأكيدى فى عدة حالات مثل تأكيد اشتراك الاعضاء عن طريق البريد الالكترونى او رومز التحقق او عدة حالات

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

كود الدالة فى النهاية

function ver_key($length , $letters = FALSE){
	$digits = range(0,9);
	if($letters) {
		$digits = array_merge($digits,range('a','z'));
	}
	$code = '';
	$max_key = count($digits) - 1;
	for($i = 0 ; $i < $length ; $i++) {
		$code .= $digits[rand(0,$max_key)];
	}
	return $code;
}

فى البداية انشأنا دالة تقبل بارميترين

الاول : integer و هو طول الكود

الثانى : bool و هو ما إذا كان الكود يدعم الاحرف ام لا ( افتراضيا لا )

ثم عرفنا مصفوفة digits و تحتوى على الارقام من 0 الى 9 باستخدام الدالة range و التى تستخدم لإرجاع مصفوفة تحتوع على ارقام او حروف مكونة من المدى الذى نحدده ، فمثلا

$num = range(0,3);

تعادل

$num = array(0,1,2,3);

ثم تأكدنا من دعم الاحرف ام لا عن طريق اتأكد من الباراميتر الاختيارى letters و فى حالة تحقق الدعم للاحرف دمجنا مصفوفة جديدة تحتوى على الحروف مع المصفوفة digits باستخدام الدالة array_merge

if($letters) {
	$digits = array_merge($digits,range('a','z'));
}

ثم عرفنا المتغير code و الذى سيحمل قيمة الكود العشوائى ، و المتغير max_key و الذى يحمل اكبر key بالمصفوفة digits

ثم استخدمنا for loop لاضافة قيمة عشوائية من المصفوفة digits الى المتغير code ليكرر نفسه حسب طول الكود المراد

و لاستخدام الدالة :

لانشاء كود مكون من 20 رقم

 ver_key(20);

و لانشاء كود مكون من 20 رقم و حرف

echo ver_key(20,true);

اتمنى من الله ان يكون وفقنى فى الشرح و ان يكون درس مفيد

4 −1

I don't care how you code , i have my own style and i like it

#2

جميل

رنا يوفقك يارب

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

In bad state

#3

مشكور :)

صراحة قد استفدت كثيرا من هذا المنتدى فاردت ان ارد اى شئ على قدر استطاعتى

I don't care how you code , i have my own style and i like it

#4

شرح جميل ...

مكن إستخدام هذا الكود لتوليد كلمة عشوائيه حروف وأرقام :

  echo  substr(md5($_SERVER['REMOTE_ADDR'].microtime().rand(1000,1000)),0,10);

قم بتغيير رقم عشره إلى رقم الخانات التي تريد توليدها وأكبر رقم خانات يمكن توليده هو 32

بالتوفيق :)

CMS Sfhati , Website Generator


نظام إدارة المحتوى صفحتي ... جربه الآن 


 


small-logo.png

#5
bastr3 كتب:

شرح جميل ...

مكن إستخدام هذا الكود لتوليد كلمة عشوائيه حروف وأرقام :

  echo  substr(md5($_SERVER['REMOTE_ADDR'].microtime().rand(1000,1000)),0,10);

قم بتغيير رقم عشره إلى رقم الخانات التي تريد توليدها وأكبر رقم خانات يمكن توليده هو 32

بالتوفيق :)

مشكور للاضافة الجميلة ، فكرة مفيدة لتوليد كلمة عشوائية فعلا :)

I don't care how you code , i have my own style and i like it

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