صفحة 2 من 3 الأولىالأولى 123 الأخيرةالأخيرة
النتائج 16 إلى 30 من 38

الموضوع: ..::|| دراسه وتحليل في برمجه منتدى vBulletin ||::..

  1. #16
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2001
    المشاركات
    808


    rafia
    مشكور على الرابط والدرس المفيد حقا ..

    نستطيع اختصار شرح عمل هذا السطر بانه الخاص باظهار الاخطاء من هذا النوع على مااعتقد

    ------------------------------------------------------
    يبدو أن هناك مشكلة بسيطة في قاعدة بيانات .
    الرجاء إعادة المحاولة بنقر زر التحديث في متصفحك.

    تم إعلام الدعم التقني للمنتدى بهذه المشكلة، بريدياً، ويمكنك مراسلتهم إن استمرت المشكلة.

    نعتذر عن أي إزعاج سببه هذا لكم.
    ------------------------------------------------------





    __________________
    http://www.pl2004.com
    GHOST غير متواجد حالياً

  2. #17
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2001
    المشاركات
    808


    الجزء 3-1
    ######

    ملاحضه :
    كتجربه تم ازاله هذا الجزء من الملف في المنتدى وبقى المنتدى يعمل بشكل طبيعي .

    عمل هذا الجزء : تحديد التمبلتات اللتي تتعامل مع هذا الملف ( index.php )
    الفائده من هذا الجزء : ؟؟

    كود PHP:
    $templatesused='forumhome_birthdaybit,error_nopermission,forumhome_pmloggedin,forumhome_welcometext,forumhome_logoutcode,forumhome_newposts,forumhome_todayposts,forumhome_logincode,forumhome_loggedinuser,forumhome_loggedinusers,forumhome_lastpostby,forumhome_moderator,forumhome_forumbit_level1_nopost,forumhome_forumbit_level1_post,forumhome_forumbit_level2_nopost,forumhome_forumbit_level2_post,forumhome,forumhome_unregmessage'
    من الكلمه الاولى ( $templatesused ) نستنتج ان هذا الجزء خاص بتحديد التمبلتات المستخدمه في حال فتح هذا الملف index.php

    ووضعت علامه ( = ) لتحديد التمبلتات بعدها
    وسوف تكون كلها بين هذتين العلامتين :
    (') في البدايه
    و
    (';) في النهايه

    ويتم وضع علامه ( , ) بين كل تمبليت واخر مع عدم وضع اي فراغ واذا كان اسم التمبليت مكون من كلمتين مثل
    ( forumhome birthdaybit )
    فيجب اضافه ( _ ) بينهما مكان الفراغ لتصبح
    ( forumhome_birthdaybit )



    التمبلتات اللتي تم تحديدها هنا هي :
    forumhome_birthdaybit
    error_nopermission
    forumhome_pmloggedin
    forumhome_welcometext
    forumhome_logoutcode
    forumhome_newposts
    forumhome_todayposts
    forumhome_logincode
    forumhome_loggedinuser
    forumhome_loggedinusers
    forumhome_lastpostby
    forumhome_moderator
    forumhome_forumbit_level1_nopost
    forumhome_forumbit_level1_post
    forumhome_forumbit_level2_nopost
    forumhome_forumbit_level2_post
    forumhome
    forumhome_unregmessage

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





    __________________
    http://www.pl2004.com
    GHOST غير متواجد حالياً

  3. #18
    عضو نشيط
    تاريخ التسجيل
    Feb 2003
    المشاركات
    76


    فعلاً فكرة حلوة

    الله يوفقك





    __________________

    * * * * * * *
    مع تحيات أبو حميد
    * * * * * * *
    abohamed غير متواجد حالياً

  4. #19
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2001
    المشاركات
    808


    الجزء 4-1
    ######
    احب اقولكم اني بالفعل متحمس للموضوع ..ولكن فيه نقاط اتمى انكم تساعدوني في فهمها .. واذا حصل مني خطأ لا تنسون تصححون

    كود PHP:
    $loadbirthdays=1;
    $loadmaxusers=1
    ---------------
    رقم السطر :
    9 + 10
    ---------------
    ارتباطات اخرى :
    هذه الامرين مرتبطه بملف
    vb/admin/functions.php
    عند السطر :
    1032 الى 1057
    عنوان الجزء ( Start cachetemplate )
    ---------------
    عمله :
    ؟
    ---------------





    __________________
    http://www.pl2004.com
    GHOST غير متواجد حالياً

  5. #20
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2001
    المشاركات
    808


    الجزء 4-1 بانتظار من يشرحه
    ######
    الجزء 5-1 بانتظار من يشرحه
    ######




    الجزء 7-1
    ######


    كود PHP:
    //check usergroup of user to see if they can use PMs
    //$permissions=getpermissions($forumid);
    if ($enablepms==and $permissions['canusepm'] and $bbuserinfo['receivepm']) {
      
    $ignoreusers="";
      if (
    trim($bbuserinfo['ignorelist'])!="") {
        
    $ignoreusers='AND fromuserid<>'.implode(' AND fromuserid<>',explode(' 'trim($bbuserinfo['ignorelist'])));
      }

      
    $allpm=$DB_site->query_first("SELECT COUNT(*) AS messages FROM privatemessage WHERE userid=$bbuserinfo[userid] $ignoreusers");
      
    $newpm=$DB_site->query_first("SELECT COUNT(*) AS messages FROM privatemessage WHERE userid=$bbuserinfo[userid] AND dateline>$bbuserinfo[lastvisit] AND folderid=0 $ignoreusers");
      
    $unreadpm=$DB_site->query_first("SELECT COUNT(*) AS messages FROM privatemessage WHERE userid=$bbuserinfo[userid] AND messageread=0 AND folderid=0 $ignoreusers");

      if (
    $newpm['messages']==0) {
        
    $lightbulb='off';
      } else {
        
    $lightbulb='on';
      }
      eval(
    "\$pminfo = \"".gettemplate('forumhome_pmloggedin')."\";");

    } else {
      
    $pminfo='';

    ------------------------------------------------------------------------
    رقم السطر :
    من 19 الى 43
    ------------------------------------------------------------------------
    عمله :
    الرسائل الخاصه
    ------------------------------------------------------------------------
    الشرح :

    -------------
    //check usergroup of user to see if they can use PMs
    هذا السطر مسبوق بعلامه ( // ) لذا فهو لا يظهر وهو لشرح عمل الميثود بشكل كامل والترجمه هنا هي ( تاكد من مجموعه العضو اذا كانت تستطيع رؤيه واستخدام خدمه الرسائل الخاصه )


    -------------
    يبدأ الامر بـ ( if ) في السطر 21 وينتهي بهذا الامر ( else ) في السطر 41 ويعني ان هناك خيارين
    ( اذا كان xxxx فنفذ هذا الامر xxxxx والا نفذ هذا الامر )
    if ($enablepms==1 and $permissions['canusepm'] and $bbuserinfo['receivepm'])
    تعني :
    ((( اذا كان ))) $enablepms==1 اي اختيار الادمن في لوحه التحكم الرئيسيه يسمح للاعضاء باستخدام الرسائل الخاصه
    (( شاهد ملف install.php السطر 1818
    شاهد لوحه التحكم == خيارات المنتدى == Private Messaging Options == Enable Private Messaging?

    ((( اذا كان - تكمله ))) $permissions['canusepm'] اي اختيار الادمن في لوحه التحكم الرئيسيه يسمح لمجموعه معينه باستخدام الرسائل الخاصه .. مثال قد يكون الادمن سمح للمجموعات الاعضاء من اعضاء ومشرفين ومراقبين بمشاهده واستخدام البريد الخاص .. اما مجموعه الزوار غير المسجلين فلم يسمح لهم .
    (( شاهد ملف install.php السطر 1022 حيث تم تكوين حقل خاص اسمه canusepm في جدول usergroup ... الجدول به خصائص كل مجموعه ومن ضمن الخصائص canusepm الخاص بالسماح باستخدام الرسائل الخاصه او لا

    ((( اذا كان - تكمله ))) $bbuserinfo['receivepm' اي اختيار العضو نفسه بتفعيل الرسائل الخاصه في لوحه التحكم الخاص به
    -------------
    باكتمال هذه الشروط الثلاثه فان الميثود سينفذ مهمه سنذكرها الان
    اذا لم تكتمل ( else ) فسينفذر الخيار الثاني ... السطر 41
    } else {
    $pminfo='';
    }
    وهو مابين العلامتين ('') ... بما ان مابين العلامتين فارغ هذا هو اللذي سيتم تنفيذه حيث لن يظهر صندوق الرسائل الخاصه لك في الصفحه الرئيسيه للمنتدى ( للتوضيح اكثر
    الشبح - لديك 0 رسالة/رسائل جديدة، منذ آخر زيارة لك.
    (لديك 0 رسالة/رسائل غير مقروءة، ومجموع الرسائل في مجلداتك هو 9 )
    -------------
    ماهو الامر اللذي سينفذا اذا اكتملت الشروط الثلاثه بالاعلى ؟
    سيتم استدعاء ثلاث معلومات
    1- عدد جميع الرسائل الخاصه والمتغير الخاص به هو $allpm[messages]
    $allpm=$DB_site->query_first("SELECT COUNT(*) AS messages FROM privatemessage WHERE userid=$bbuserinfo[userid] $ignoreusers");

    2- عدد الرسائل الجديده والمتغير الخاص به هو $newpm[messages]
    $newpm=$DB_site->query_first("SELECT COUNT(*) AS messages FROM privatemessage WHERE userid=$bbuserinfo[userid] AND dateline>$bbuserinfo[lastvisit] AND folderid=0 $ignoreusers");

    3- عدد الرسائل اللتي لم يتم قرائتها والمتغير الخاص به هو $unreadpm[messages]
    $unreadpm=$DB_site->query_first("SELECT COUNT(*) AS messages FROM privatemessage WHERE userid=$bbuserinfo[userid] AND messageread=0 AND folderid=0 $ignoreusers");
    -------------
    هناك امر اخر خاص برقم 2 ( وجود رسائل جديده ) وهو يتعلق بالصوره فاذا كانت هناك رسائل جديده فيتظهر صوره on.gif واذا لم يكن هنا رسائل جديده فستظهر صوره off.gif وهذا هو الامر الخاص بها وهو في هذا الميثود في السطر من 34 الى 38
    if ($newpm['messages']==0) {
    $lightbulb='off';
    } else {
    $lightbulb='on';
    }
    الامر هنا يقول if ( اذا كان ) $newpm الرسائل الجديده = صفر .. بمعنى انه فارغ
    اذا قم بتعويض $lightbulb بـ off
    else ( والا ) بمعنى انه ليس فارغ وبه رسائل اذا قم بتعويض $lightbulb بـ on
    ملاحضه : طريقه تنفيذه هذا الامر كالتالي .. هذا المتغير $lightbulb مكتوب في تمبليت forumhome_pmloggedin وهو الخاص باظهار بيانات الرسائل الخاصه في الصفحه الرئيسيه كما في مثال بريد الشبح بالاعلى .. والكلمه مكتوبه بهذا الشكل
    <img src="images/$lightbulb.gif" alt="">
    فعندما تفح الصفحه الرئيسيه للمنتدى ولم يكن لديك اي رسائل خاصه فان $lightbulb تتبدل الى off ومن ثم ستظهر الصوره off.gif التي تدل على عدم وجود رسائل جديده ..
    او عندما تفح الصفحه الرئيسيه للمنتدى وكان لديك رسائل جديده فان $lightbulb تتبدل الى on ومن ثم ستظهر الصوره on.gif التي تدل على وجود رسائل جديده ..
    -------------
    هناك امر اخير داخل هذا الميثود في حال اكمال الشروط الثلاثه وهو استدعاء القالب اللذي سيتم وضع فيه ناتج هذه العمليه وهو القالب
    forumhome_pmloggedin
    وهذا هو الامر
    eval("\$pminfo = \"".gettemplate('forumhome_pmloggedin')."\";");
    -------------
    آخر الميثود هو ( else ) وتم شرحه بالاعلى .
    -------------


    ماهو المتغير العام لهذا الميثود ؟
    المتغير العام هو $pminfo .. ويتم وضعه في قالب forumhome


    لماذا يتم وضعه في قالب forumhome ؟ وهل سيعمل لو تم وضعه في اي قالب اخر مثلا forumdisplay ؟
    يتم وضعه في قالب forumhome لسببين :
    1- لان الميثود الخاص بهذا المتغير تم كتابته في ملف vb/index.php
    2- هذا القالب forumhome لا يقوم باستدعائه الا ملف vb/index.php لان كليهما خاص بالصفحه الرئيسيه
    ولو وضع المتغير $pminfo في اي قالب اخر مثل forumdisplay فانه لن يعمل


    لماذا لا يعمل ؟
    القالب forumdisplay يستدعيه الملف forumdisplay.php وهذا الملف لم يكتب فيه الميثود الخاص بهذا المتغير لذا لن ينفذ امر المتغير .





    __________________
    http://www.pl2004.com
    GHOST غير متواجد حالياً

  6. #21


    كود PHP:
    $loadbirthdays=1;
    $loadmaxusers=1
    أتوقع الأمرين هذولي يحملون متغيرين
    1- المتغير 1 (زي الموجود في المثال ) وهو معناه إظهار ..
    1- المتغير 0 ،، وهذا يعني عدم إظهاراها ..

    الأمر الأول خاص بأعياد الميلاد اللي تظهر في الـindex ،، والأمر الثاني خاص على ما أظن بأكثر أعضاء تواجدوا في الموقع بنفس الفترة في الـindex ..





    __________________
    مع تحيات المصمم
    http://www.almosamem.net
    المصمم mosamem غير متواجد حالياً

  7. #22
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2001
    المشاركات
    808


    أخيرا تم الرد من احد الاعضاء


    المصمم mosamem
    اعتقد ان ماذكرته هو الصحيح وسيتم العوده الي شرحه بالتفصيل اذا وصلنا باذن الله الى ملف
    vb/admin/functions.php





    __________________
    http://www.pl2004.com
    GHOST غير متواجد حالياً

  8. #23
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2001
    المشاركات
    808


    الجزء 8-1
    ######

    كود PHP:
    $numbersmembers=$DB_site->query_first('SELECT COUNT(*) AS users,MAX(userid) AS max FROM user');
    $numbermembers=number_format($numbersmembers['users']); 

    ------------------------------------------------------------------------
    رقم السطر :
    من 45 الى 46
    ------------------------------------------------------------------------
    عمله :
    اظهار عدد الاعضاء
    ------------------------------------------------------------------------
    الشرح :


    عمل هذا الميثود بشكل عام هو :
    1- الاتصال بقاعده البيانات
    2- الوصول الى جدول محدد
    3- الوصول الى الحقول داخل هذا الجدول
    4- احصاء عدد الحقول الموجوده
    5- طبع هذا العدد

    وهذا مافعله بالضبط .. شاهد هذه العمليه
    1- الاتصال بقاعده البيانات
    2- الوصول الى جدول user
    3- الوصول الى حقل userid
    4- احصاء عدد البيانات الموجوده اسفل هذا الحقل وبمعنى اخر احصاء عدد الاعضاء لان كل حقل يمثل عضو ا واحدا
    5- المتغير في هذا الكود واللذي نقوم بوضعه في تمبليت forumhome هو $numbermembers وسوف يقوم باظهار عدد الاعضاء



    ----------------
    اسئله عامه ::


    المثال في اول رد لك بالاعلى ( احصاء عدد المنتديات ) هل يشبه هذا الميثود ؟
    لا .. المثال بالاعلى يقوم بالاتصال بقاعده البيانات ثم الجدول المطلوب ومن ثم يحضر مجموعه مباشره
    وفي هذا المثال يقوم بالاتصال بقاعده البيانات ثم الجدول المطلوب ومن ثم الحقل المحدد وبالاخير يقوم باحضار مجموعه عن طريق هذا الحقل .


    هل يمكن الاستفاده من هذا الميثود في امر اخر ؟
    نعم ..


    هل يوجد مثال ؟
    هذا مثال يتم وضعه اعلى الميثود الرئيسي اواسفل منه وهو لاظهار عدد المرفقات والمتغير الخاص به هو
    $numberattachments
    اعمل مقارنه بينه وبين الميثود الاصلي من ناحيه ..
    اسم الجدول | الحقل | المتغير | ..
    مع العلم انه يوجد ميثود اخر يمكن استخراج عدد المرفقات غير هذه الطريقه
    كود PHP:
    $numbersattachments=$DB_site->query_first('SELECT COUNT(*) AS attachments,MAX(attachmentid) AS max FROM attachment');
    $numberattachments=number_format($numbersattachments['attachments']); 






    __________________
    http://www.pl2004.com
    GHOST غير متواجد حالياً

  9. #24
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2001
    المشاركات
    808


    الجزء 9-1
    ######

    كود PHP:
    // get total posts
    $countposts=$DB_site->query_first('SELECT COUNT(*) AS posts FROM post');
    $totalposts=number_format($countposts['posts']); 

    ------------------------------------------------------------------------
    رقم السطر :
    من 48 الى 50
    ------------------------------------------------------------------------
    عمله :
    اظهار عدد الردود
    ------------------------------------------------------------------------
    الشرح

    هذا الميثود خاص باظهار مجموع البيانات ( الردود ) في جدول post
    مع ملاحضه انه يختلف عن الميثود بالمثال 8-1 حيث انه هنا يطلب العدد مباشره من الجدول دون الدخول الى اي حقل داخله
    لاحظ هنا هذا السطر
    كود PHP:
    $countposts=$DB_site->query_first('SELECT COUNT(*) AS posts FROM post'); 
    بمعنى ....
    مجموع الردود = الاتصال بقاعده البينات ثم اختار عمليه COUNT للجدول post

    انتهينا من قسم العمليه .. الان قسم التنفيذ
    كود PHP:
    $totalposts=number_format($countposts['posts']); 
    بمعنى
    $totalposts ( وهو هنا المتغير اللذي نضعه في قالب forumhome ) = ناتج العمليه السابقه




    ----------------
    اسئله عامه ::


    هل يمكن الاستفاده من هذا الميثود في امر اخر ؟
    نعم .. شاهد هاك الاحصائيات المطور من هنا
    بهذا الميثود قمت باضهار بيانات احصائيه للمنتدى بعد القيام بعدد من التعديلات عليه ويوجد مثال اسفل الصفحه الرئيسيه للمنتدى





    __________________
    http://www.pl2004.com
    GHOST غير متواجد حالياً

  10. #25
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2001
    المشاركات
    808


    الجزء 10-1
    ######

    كود PHP:
    $countthreads=$DB_site->query_first('SELECT COUNT(*) AS threads FROM thread');
    $totalthreads=number_format($countthreads['threads']); 
    ------------------------------------------------------------------------
    رقم السطر :
    من 52 الى 53
    ------------------------------------------------------------------------
    عمله :
    اظهار عدد المواضيع ( وليس عدد الردود )
    ------------------------------------------------------------------------
    الشرح

    مطابق لما ذكر في الجزء 9-1





    __________________
    http://www.pl2004.com
    GHOST غير متواجد حالياً

  11. #26
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2001
    المشاركات
    808


    الجزء 11-1
    ######

    كود PHP:
    // get newest member
    $getnewestusers=$DB_site->query_first("SELECT userid,username FROM user WHERE userid=$numbersmembers[max]");
    $newusername=$getnewestusers['username'];
    $newuserid=$getnewestusers['userid']; 
    ------------------------------------------------------------------------
    رقم السطر :
    من 55 الى 59
    ------------------------------------------------------------------------
    عمله :
    اظهار آخر عضو مسجل
    ------------------------------------------------------------------------
    الشرح
    ميثود رائع وقد نسنفيد منه في امور اخرى

    عمل هذا الميثود بشكل عام هو الاتصال بقاعده البينات ومن ثم اختيار جدول محدد ومن ثم الدخول اليه واختيار حقل معين ومن ثم البحث على اعلى عدد موجود في البيانات اسفل الحقل

    وهذا مافعله بالضبط ..
    كود PHP:
    $getnewestusers=$DB_site->query_first 
    اعطاء تعريف للعمليه getnewestusers والاتصال بقاعده البيانات

    كود PHP:
    ("SELECT userid,username FROM user 
    تعريف حقلين من جدول user للتعامل معهما وهما
    اسم المستخدم username
    ورقم الاي بي الخاص به userid

    كود PHP:
    WHERE userid=$numbersmembers[max]"); 
    هنا ذكر ان الاعتماد على اظهار النتيجه متوقف على ماهو موجود في حقل userid والسبب هو ( كل عضو يقوم بالتسجيل يكون له تلقائيا رقم ايدي خاص به ولا يتغير فمثلا المدير العام الادمن رقم الايدي الخاص به هو في الغالب 1 لانه او واحد يقوم بالتسجيل واللذي بعده يكون رقمه 2 وهكذا ويزيد العدد بازدياد الاعضاء ... وعملنا هو البحث على اكبر عدد لنعرف ان صاحبه هو اخر عضو قام بالتسجيل )
    مابعد رمز (=) حدد الامر المطلوب $numbersmembers[max] وهو البحث على اعلى رقم كماذكرنا

    انتهينا الامر من قسم العمليه وبدأ قسم التنفيذ .. والتنفيذ هنا يكون لشيئين :
    1- طبع اسم اخر عضو
    كود PHP:
    $newusername=$getnewestusers['username']; 
    و المتغير الخاص به هو $newusername


    2- طبع ايبي اخر عضو
    كود PHP:
    $newuserid=$getnewestusers['userid']; 
    المتغير الخاص به هو $newuserid




    ----------------
    اسئله عامه ::


    هل يمكن الاستفاده من هذا الميثود في امر اخر ؟
    نعم .. استطعت وضع هاك يظهر في الصفحه الرئيسيه اسم ولينك اخر موضوع كتب في المنتدى واسميته
    هاك ( اخر موضوع طرح في المنتدى )
    و تستطيع وضعه اسفل الترحيب بالعضو الجديد

    هذا الميثود المعدل من الاساسي والذي منه عملت هذا الهاك ..
    اعمل مقارنه بينه وبين الميثود الاصلي من ناحيه ..
    اسم الجدول | الحقل | المتغير | ..
    قم بادراجه في الملف اسفل او اعلى الميثود الاصلي
    كود PHP:
    // get new thread
    $getnewthread=$DB_site->query_first("SELECT threadid,title FROM thread WHERE threadid=$numbersmembers[max]");
    $newtitle=$getnewthread['title'];
    $newthreadid=$getnewthread['threadid']; 

    والان افتح تمبلت forumhome وضع هذا الكود في المكان المناسب


    آخر موضوع طرح في المنتدى هو <br>
    <a href="showthread.php?s=&threadid=$newthreadid">$newtitle</a>

    ولمشاهده مثال على عمله شاهد الصفحه الرئيسيه للمنتدى هنا





    __________________
    http://www.pl2004.com
    GHOST غير متواجد حالياً

  12. #27
    عضو نشيط
    تاريخ التسجيل
    Jul 2002
    المشاركات
    150


    طيب وش الأجزاء اللي ماشرحتها بالضبط ؟



    وياريت تعطيني ايميلك حتى ارسلك الملفات بكود التبليغ ..

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

    تحياتي





    __________________
    قادم :):)
    Mr.Ahmed غير متواجد حالياً

  13. #28
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2001
    المشاركات
    808


    Mr.Ahmed

    الاجزاء اللي ماشرحتها

    الجزء 4-1
    السطر 12
    كود PHP:
    require('./global.php'); 
    ######
    الجزء 5-1
    السطر من 14 الى 17

    كود PHP:
    $permissions=getpermissions();
    if (!
    $permissions['canview']) {
        
    show_nopermission();

    ######


    بالنسبه للبرنامج كامل بكود التبليغ ياريت ترفقه في ردك الثاني الان لاجل اقوم بسحبه وهذا بيكون اسهل





    __________________
    http://www.pl2004.com
    GHOST غير متواجد حالياً

  14. #29
    عضو نشيط
    تاريخ التسجيل
    Apr 2003
    المشاركات
    283


    رد مقتبس من GHOST
    rafia
    مشكور على الرابط والدرس المفيد حقا ..

    نستطيع اختصار شرح عمل هذا السطر بانه الخاص باظهار الاخطاء من هذا النوع على مااعتقد

    ------------------------------------------------------
    يبدو أن هناك مشكلة بسيطة في قاعدة بيانات .
    الرجاء إعادة المحاولة بنقر زر التحديث في متصفحك.

    تم إعلام الدعم التقني للمنتدى بهذه المشكلة، بريدياً، ويمكنك مراسلتهم إن استمرت المشكلة.

    نعتذر عن أي إزعاج سببه هذا لكم.
    ------------------------------------------------------

    لا ياخي هذا لها طريقة ثانية

    لكن error_reporting(7);
    تفيد بمنع ظهور رسائل الاخطاء عند المستوى سبعه






    __________________
    مجموعة بي اتش بي العربية www.php4arab.org
    البوابة العربية www.arabportal.net
    rafia غير متواجد حالياً

  15. #30
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2001
    المشاركات
    808


    الجزء 12-1
    ######


    كود PHP:
    // if user is know, then welcome
    if ($bbuserinfo['userid']!=0) {
      
    $username=$bbuserinfo['username'];
      eval(
    "\$welcometext = \"".gettemplate('forumhome_welcometext')."\";");
      eval(
    "\$logincode = \"".gettemplate('forumhome_logoutcode')."\";");
      eval(
    "\$newposts = \"".gettemplate('forumhome_newposts')."\";");

    } else {
      
    $welcometext "";
      eval(
    "\$newposts = \"".gettemplate('forumhome_todayposts')."\";");
      eval(
    "\$logincode = \"".gettemplate('forumhome_logincode')."\";");


    ------------------------------------------------------------------------
    رقم السطر :
    من 61 الى 72
    ------------------------------------------------------------------------
    عمله :
    اظهار رساله ترحيب بالزائر في الصفحه الرئيسيه للمنتدى مثل هذه
    مرحبا بك في منتديات سوالف إذا كانت هذه هي زيارتك الأولى فلا تنسى أن تتفضل بقراءة س\ج بالضغط على الرابط بالأعلى كما يشرفنا أن تقوم بالتسجيل لكي تتمكن من المشاركة وإذا رغبت بقراءة المواضيع فتفضل بزيارة القسم الذي ترغب أدناه

    .. واذا كان عضو مسجلا تظهر له رساله ترحيب خاصه به مثل هذه
    مرحبا بعودتك GHOST
    الساعة الآن (03:22 AM)
    آخر زيارة لك في (08-05-2003 02:26 AM)

    ------------------------------------------------------------------------
    الشرح

    يعتمد هذا الميثود على ( if ) و (else)

    السطر الاول
    if ($bbuserinfo['userid']!=0)
    بمعنى اذا كان رقم الاي دي للعضو يساوي ( لا شي ) فراغ فهذا يعني انه غير مسجل ... ونفذ المهمه اسفل وهي



    المهمه الاولى
    {
    $username=$bbuserinfo['username'];
    اول مهمه وهي اعطائه الاسم اللذي اخترته في لوحه التحكم وهي ( زائر ) او ( غير مسجل ) او غيرها



    المهمه الثانيه
    eval("\$welcometext = \"".gettemplate('forumhome_welcometext')."\";");
    قم بتعريف المتغير $welcometext واجعل قيمتها تساوي البيانات المكتوبه في تمبليتforumhome_welcometex
    وهي اللتي تظهر هذه العباره
    مرحبا بك في منتديات سوالف إذا كانت هذه هي زيارتك الأولى فلا تنسى أن تتفضل بقراءة س\ج بالضغط على الرابط بالأعلى كما يشرفنا أن تقوم بالتسجيل لكي تتمكن من المشاركة وإذا رغبت بقراءة المواضيع فتفضل بزيارة القسم الذي ترغب أدناه

    هذا المتغير $welcometext نضعه في مكان بتملبيت forumhome لتقوم باستدعا ماداخل تمبليتforumhome_welcometex







    المهمه الثالثه
    eval("\$logincode = \"".gettemplate('forumhome_logoutcode')."\";");

    قم بتعريف المتغير $logincode واجعل قيمتها تساوي قيمه البيانات التي داخل التمبليت 'forumhome_logoutcode'
    قد يكون هذا الزائر المجهول اللذي يقم بالتسجيل هو في الحقيقه احد الاعضاء ولكنه قامه بالخروج من المنتدى ومسح الكوكيز ويحتاج الى تموذج الدخول للمنتدى مره اخرى

    هذا المتغير $welcometext نضعهه في مكان بتملبيت forumhome لتقوم باستدعا ماداخل تمبليتforumhome_welcometex







    الامر الثالث
    eval("\$newposts = \"".gettemplate('forumhome_newposts')."\";");

    هذا الامر هو الخاص باظهار رابط
    <a href="search.php?s=$session[sessionhash]&action=getnew">شاهد المشاركات الجديدة </a>

    قم بتعريف الكلمه $newposts واجعل قيمتها تساوي قيمه البيانات التي داخل التمبليت 'forumhome_newposts'
    هذا المتغير نضعه في مكان بتملبيت forumhome لتقوم باستدعاء ماداخل التمبليت المذكور






    انتهينا من الاوامر اللتي ستنفذ في حاله if ( اذا كان )
    ولكن في حاله else ( والا )


    } else {
    تعني اذا كان العضو معروفا وله رقم ايدي فنفذ الاوامر اسفل



    الامر الاول
    $welcometext = "";
    تم تعريف هذه المتغير من قبل وهنا نطلب منه ان تكون قيمته = صفر ويعني عدم تنفيذه



    الامر الثاني
    eval("\$newposts = \"".gettemplate('forumhome_todayposts')."\";");
    تعريف المتغير $newposts اللذي سنضعه في تمبليت forumhome ليقوم باستدعاء التمبليت 'forumhome_todayposts'





    الامر الثالث
    eval("\$logincode = \"".gettemplate('forumhome_logincode')."\";");
    تعريف المتغير $logincode اللذي سنضعه في تمبليت forumhome ليقوم باستدعاء التمبليت 'forumhome_logincode'





    __________________
    http://www.pl2004.com
    GHOST غير متواجد حالياً





ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض