الســــلام عليكم
انا مزوغ من الكلية النهاردة مخصوص عشان اجبلكم الكلاس
الرابط مباشر من السرفر منعا للضياع
لكن لما بحطه فى منتدى راح يحولك على صفحة انتظر ثانية وراح يحملك
محتويات الكلاس
يوجد ملف الكلاس نفسه
ويوجد مثال يحتوى على

  1. اضافة اعضاء جديد - التسجيل يعنى
  2. التاكد ان كان المستخدم موجود فعلا
  3. التعرف على المستخدم وحفظ باسورده
  4. سيزن خاصة لعمل ذلك فانا انصح كل من يعانى من مشكلة السيزن (session) يستخدم هذا الكلاس
  5. تقدر تعدل بيناتك الشخصية فى اى وقت
  6. تقدر تبعت باسوردك لو نسيته على الاميل

طبعا الامثلة بسيطة جدا
يعنى هيبقى له شكل تانى لو دمجته فى موقعك
وانا سمعت عن نظام اعضاء بينزل السيزن فى قاعدة البينات هو حلو جدا
وانا هجيب كلاس قويب له زى ال مستخدم فى الـphpbb


شرح الكلاس كما قدمه الاخ the_traveller
وتحية كبيرة جدا له على المجهود ده


شرح الكلاس سهل جدا
اولا نفتح ملف usermanager.php الموجود بداخل مجلد الكلاس الاساسي
نلاحظ بعض المتغيرات وهي

كود PHP:
                           var $connect '';      // الاتصال 
     
    
var $logged_in '';    // تسجيل الدخول 

    
var $HOMEPAGE "/index.php";   // الصفحه الرئيسيه 
     
    
var $LOGIN "?action=LOGIN";   // اكشن صفحة تسجيل الدخول 
     
    
var $REGISTER "?action=REGISTER"// اكشن صفحة التسجيل لعضوية جديدة 
     
    
var $FORGOTPW "?action=FORGOT";   // أكشن صفحة نساين كلمة المرور 
     
    
var $REDIR_PAGE "/index.php"// اكشن صفحة التحويل 
     
    
var $USR_MAXCHARS 30// أقصى عدد للحروف في اسم المستخدم 
ودالة البناء للكلاس هي عملية الاتصال بقاعدة البيانات

نقره لتكبير أو تصغير الصورة ونقرتين لعرض الصورة في صفحة مستقلة بحجمها الطبيعي

لذلك يجب التعديل في التالي في الدالة

كود PHP:
                               $dbhost    'localhost'// سيرفر قاعدة البيانات 
    
$dbusername    'username'// اسم المشتخدجم لقاعدة البيانات 
    
$dbpassword    ''// Yكلمة السر لقاعدة البيانات 
    
$dbname    ''// Yاسم قاعدة البيانات 
ثم بعد ذلك دوال الكلاس
check_email = دالة التأكد من صحة الايميل
create_password = دالة عمل الباسورد
username_taken = التأكد من ان اسم المستخدم غير مسجل من قبل
add_user = اضافة مستخدم جديد
display_status = دالة لعرض رسالة نجاح التسجيل بعد التسجيل او لعرض الخطأ في التسجيل
display_register = دالة معالجة أخطاء التسجيل والتأكد من البيانات
confirm_user = التأكد من بيانات العضو عند تسجيل الدخول (( مطابقة الباسورد بقاعدة البيانات ))
check_login = التأكد من تسجيل العضو دخول وان بياناته صحيحه
display_forgot = عرض فورم نسيان كلمة المرور ومعالجة الباسورد الجديد وارساله على الاسمسل
display_login = عرض الرسال اثناء معالجة البيانات من فورم تسجيل الدخول وعرض اخطاء تسجسل الدخول ايضا
log_out = تسجيل الخروج
display_user = عرض بيانات العضو وتعديلها

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

كود PHP:
                       include_once('../usermanager.php'); 
2 - انشاء اوبجكت بالكلاس

كود PHP:
                       $UM = new UserManager(); 
هنا تحدد ما تريد عمله
هنا سأشرح ما تم كتابته في الكلاس

كود PHP:
                       // عمل مصفوفه بالاكشنز الممكنه 
switch ($_GET['action']) 

    
// حالة تسجسل الدخول 
    
case LOGIN
        
$UM->display_login(); 
        
// تسجييل عضو جديد 
        
break; 
    case 
REGISTER
        
$UM->display_register(); 
        break; 
        
// نسسيان كلمة المرور 
    
case FORGOT
        
$UM->display_forgot(); 
        break; 
        
// بيانات العضو للتعديل 
    
case INFO
        
$UM->display_user(); 
        break; 
    default: 
    
// الحالة الافتراضية تحويل العضو الى الصفحه الرئيسيه 
        // Redirects to the home page set in the class 
        
header("Location: $this->HOMEPAGE");  
        break; 

وهناك ايضابعض الاشياء التي تساعدك (( يجب وضعها بعض انشاء الاوبجكت مباشرة ))

كود PHP:
                       include_once("../usermanager.php"); 

$UM = new UserManager

// عمل شرط ان عدد حروف اسم المستخدم لا يجب ان يزيد عن 50 حرف 
$UM->USR_MAXCHARS 50// Default 30 

// تغيير رابط الصفحه الرئييسه للاسكربت تبعك لاي صفحه اخرى (( صفحة التحويل )))) 
$UM->HOMEPAGE "http://example.org/index.php"// may also be "../index.php" 

// تغيير صفحه التحويل بعد تسجيل الدخول 
$UM->REDIR_PAGE "http://example.org/myredirection.php"

// تغيير لنكات تسجسيل الدخول تسجسل الخروج التسجيل نسيان كلمة المرور لصفحه اخرى في موقعك 
$UM->LOGIN|REGISTER|FORGOTPW "a_page_on_your_site.php"