[الدرس الرابع] متغيرات نسخة فيبي ضرورية لبناء الهاكات

xml_2009

:: Coder/Designer :: , مُلقى دورة برمجة الهاكات
Coder/Designer
25 يناير 2013
22
5
0
32
السلام عليكم و رحمة الله و تعالى و بركاته

تحيه طيبه لزوار وآعضاء الدعم العربي

بعدما عرفنا كيفية إضافة مجموعة اعدادات خاصة بهاك و إضافة اعدادات له اليوم سنتعرف على اعدادات + متغيرات خاصة بنسخة الفيبي أي جاهزة و قابلة للطباعة او للاستعمال في أسطر برمجية.

قبل كل شيء ندخل لنسختنا على السرفر المحلي C:\AppServ\www\vbulletin ثم ننشئ ملفا *.php سميه ما تريد، انا ساعطيه اسم ali.php

attachment.php


ندخل له عبر محرر اكواد ثم نضيف له الكود التالي :

PHP:
<?php
require_once('./global.php');
ثم احفظ الملف.
في الكود وضعنا استدعاء لملف global.php الخاص بالنسخة حيث يجمع لنا كل بيانات المنتدى. هذه البيانات اما اعدادات، معلومات المستخدم/الزائر، دوال خاصة للقوالب و قواعد بيانات ... و الاهم لنا في هذا الدرس هو الاعدادات و معلومات المستخدم/الزائر

اولا نبدأ بمتغيرات الاعدادات العامة options الغير الخاصة.

الاعدادات العامة options الغير الخاصة هي التي تاتي مع النسخة و يمكن ان نجدها و نعدلها في لوحة التحكم من القائمة خيارات المنتدى، هذه الاعدادات تتفرع الى اعداد عنوان الموقع، رابط الموقع، الحدد الأقصى للصور بالمواضيع، تفعيل تعطيل التسجيل ....... استسلمت لا اعرف الاعدادات كلها، عددها : 408، ستستغرب و ستقول كيف ساعرف كل هذه الاعدادات؟ كيف ساميز بين كل عمل اعداد؟ كيف عرف علي انه يوجد 408 اعداد ؟

الطريقة سهلة جدا، دعنا نبتعد دقيقة عن الفيبي و نرجع للمصفوفات في البي اتش بي.
المصفوفات Array هي انواع من بينها التي تكتب هكذا

كود:
$array["key"] = "value";

مثلا نريد تصميم موقع جديد خاص بنا فيه 2 اعدادات فقط، عنوان الموقع، البريد الالكتروني و هذا سيكتب بالطريقة التالية :
PHP:
$setting = array();
$setting["my_site_title"] = "Support Arab";
$setting["my_site_email"] = "ex@ex.com";


سنعطي لهذا الكود اسم " اعدادات خاصة بموقعي " حتى نستعمله مرة تانية

فالمتغير $setting هو متغير من نوع مصفوفة Array.
و المتغيرات $setting[key] هي متغيرات بقيمة value و معرف key

فلنفترض ان الاسطر البرمجية السابقة " اعدادات خاصة بموقعي " هي ملف global.php و ان المتغير $setting هو المتغير $options في نسخة vBulletin

نرجع للكود " اعدادات خاصة بموقعي " و نكتب اسفله

كود:
print_r($setting);

ونحفظه باسم my_setting.php داخل مجلد السرفر تم ندخل له عبر المتصفح : http://localhost/my_setting.php

النتيجة :

attachment.php


الدالة او الوظيفة print_r تطبع لنا محتويات مصفوفة.
كم تلاحظون لدينا اعدادين معرفين ب key و لهذين الاعدادين قيمة value

ولمعرفة برمجيا كم يوجد من اعداد نرجع للاسطر البرمجية السابقة " اعدادات خاصة بموقعي "
و نحذف
كود:
 print_r($setting);

ثم نضع مكانه

PHP:
$x = 0;
foreach ($setting as $setting_item)
{
    $x += 1;
}
echo $x;
شرح الكود :

السطر 1 وضعنا متغير x بقيمة 0
السطر 2 وضعنا حلقة تكرار foreach هي تقول كرر لي كل اعداد بالمصفوفة ثم طبق ما يوجد اسفلي (echo $x)
السطر 4 اضافة +1 للمتغير x
السطر الاخير يطبع المتغير x

تطبيق الكود عن طريق دخول للملف عبر المتصفح : http://localhost/my_setting.php

النتيجة :

attachment.php


بمجرد نرجع الآن نطبق على نسخة الفيبي في ملف ali.php ما يلي :

PHP:
<?php
require_once('./global.php');

$x = 0;
foreach ($vbulletin->options as $option)
{
    $x += 1;
}

echo $x;
و ندخل على الملف من المتصفح http://localhost/vbulletin/ali.php
سنجد الرقم 408 و هو عدد الاعدادات :sly:
و الآن عرفتم كيف عرف علي انه يوجد 408 اعداد بنسخة الفيبي 👏
و عرفتم ايضا كل الاعدادات لكن لا تعرفون عمل كل واحد :icon1366:

الطريقة بسيطة جدا 💘
توجد طريقتين لا طريقة واحدة

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

الطريقة الأولى :
- اما عن طريق دخول phpmyadmin و الدخول لقاعدة بيانات النسخة ثم جدول setting

attachment.php


ثم

attachment.php


اسم الاعداد المسؤول على عنوان المنتدى هو bbtitle
🍭 طبعا الطريقة غبية و متعبة و ايضا ستتسائل و تقول من قالي bbtitle مسؤولة عن جلب بريد الموقع :bleh:

خلينا ننتقل لافضل طريقة و الاسهل و هي الدخول للوحة تحكم المنتدى http://localhost/vbulletin/admincp

تم من خيارات المنتدى > خيارات المنتدى > اسم الموقع / الوصلات / المراسلة و الاتصال

اقترب لاي اعداد بالماوس و سترى اسمه كما بالصورة :

attachment.php


و الآن اصبحتم تعرفون تجلبو اي اعداد خاص بالنسخة

ملاحظة : توجد اعدادات اخرى كثيرة منها الخاصة بمعلومات العضو مسجل دخوله (زائر تكون مصفوفة تقريبا شبه فارغة )
كود:
$vbulletin->userinfo

طبق عليها مثل ما شرحت سابقا و ستعرف keys الخاصة بها عن طريق دخول جدول user بقاعدة بيانات او من لوحة التحكم الأعضاء > عضو جديد ثم قف بالماوس على اي اعداد و سيظهر لك

و توجد متغيرات غير عامة تكون فقط داخل ملف معين مثل foruminfo داخل ملف forumdisplay.php و threadinfo داخل showthread.php و post داخل هوكات postbit و userinfo داخل member.php ...

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

اتمنى يكون اعجبكم الدرس و نلتقي بمشيئة الله في درس جديد 💕

 

المرفقات

  • 1.png
    1.png
    6 KB · المشاهدات: 755
  • 2.png
    2.png
    37.9 KB · المشاهدات: 829
  • 3.png
    3.png
    46.2 KB · المشاهدات: 791
  • 4.png
    4.png
    6.7 KB · المشاهدات: 732
  • 5.png
    5.png
    73.4 KB · المشاهدات: 797
  • 6.png
    6.png
    41.3 KB · المشاهدات: 741
رد: متغيرات نسخة فيبي ضرورية لبناء الهاكات - دورة من الدعم العربي

الله يعطيك العافيه
 
رد: متغيرات نسخة فيبي ضرورية لبناء الهاكات - دورة من الدعم العربي

بارك الله فيك ياغالى

بقرأ الدرس بشكل متأنى وبرد مرة ثانية لو عندى اى ملاحظات
 
رد: متغيرات نسخة فيبي ضرورية لبناء الهاكات - دورة من الدعم العربي

جزاك الله كل خير اخى الكريم على الدرس الرائع
 
رد: متغيرات نسخة فيبي ضرورية لبناء الهاكات - دورة من الدعم العربي

مشكور على الدرس واتمنى ان تكون الدروس موضحة اكثر للمبتدئين مثلى