[align=center]بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله
بعد ان تعلمنا كيفية بناء صفحة جديدة متطورة في الموضوع السابق ،، اريد اليوم ان نتحدث عن كيفية برمجة هاك خاص بك وتطويره ، وسندرس الاساسيات فقط بدون الخوض في التفاصيل المملة ، سوف يكن الموضوع بصورة عامة وسوف يكن بمثابة نقطة انطلاقة لك في عالم برمجة وتطوير الـvBulletin 3.5
ملاحظة : بالطبع يجب ان تكن ملما بلغة البرمجة PHP ولغة قواعد البيانات MySQL
بالطبع هنالك تغير كبير جدا في اسماء الدوال والمصفوفات و المتغيرات مابين النسخة 3.0.x والنسخة 3.5 ،
بعض التغيرات
كود:
3.0.x => 3.5
$DB_site-> => $db->
$bbuserinfo[] => $vbulletin->userinfo[]
$vboptions[] => $vbulletin->options[]
$_GET/$_REQUEST/$_POST/$_****IE => $vbulletin->GPC[]
globalize() => $vbulletin->input->clean_array_gpc()
$DB_site->query(); => $db->query_read();
اعذروني للمقدمة الطويلة ،
لكي تقوم ببرمجة اي هاك ينبغي ان تتصل بقاعدة البيانات الخاصة بالمنتدى لكي يتثنى لك تنفيذ جميع الاوامر الخاصة بالاستدعائات والمقارانات لان منتديات الvBulletin معتمدة تماما على قواعد البيانات ، لدي الــvBulletin دوالها وكلاساتها الخاصة بالاتصال بقواعدة البيانات واجراء الاستعلامات عليها ، وطبعا هذه الدوال والكلاسات سوف تساعدنا كثيرا وتختصر لنا كثيرا من الوقت و الجهد
الاتصال بقاعدة البيانات وتنفيذ الاستعلامات
اولا يجب ان تضمن هذا الملف
كود PHP:
require("global.php");
قبل كل شي ،
تم كتابة كلاس خاصة للاتصال بقاعدة البيانات طبعا تم التعريف في ملف القلوبال للكائن .
هنالك دوال لتنفيذ الاستعلامات على قواعد البيانات:-
الدالة الاولى
هذه الدالة تقم بتنفيذ اوامر محددة SELECT و SHOW فقط
مثال :
اذا اردنا ان نختار اسم العضو اللي في منتدى سوالف الذي رقمه 12894 ( طبعا انا :) )
يجب ان نكتب :
كود PHP:
$db->query_read("SELECT * FROM user WHERE userid=12894");
الدالة الثانية
كود PHP:
$db->query_write
هذه الدالة تقم بتنفيذ اوامر الــUPDATE و ALTER وكل اوامر تعديل البيانات
مثال :-
كود PHP:
$db->query_write("UPDATE user SET email = 'hamada4ever@sudabest.com' WHERE userid= 12894");
هنا تم تحديث الايميل الخاص بالعضو رقم "12894" .
يمكنك ان تجلب كل شي من قاعدة البيانات عبر الكلاس ، مثلا
كود PHP:
$vbulletin->itemname
،
انتهينا الان ،
والان تعرفنا كيف نتصل بقاعدة البيانات وننفذ الاوامر عليها ، سوف اضع لكم مثال كامل كتطبيق عملي لهذا الدرس :-
كود PHP:
<?php
// ######################## اعداد البئية العامة ###########################
error_reporting(E_ALL & ~E_NOTICE);
// ########################## الثوابت ############################
require_once('./global.php');
$navbits = array();
// عنوان الصفحة في الشريط
$navbits[$parent] = 'صفحتي المتطورة';
$navbits = construct_navbits($navbits);
// من هنا انطلق
// لعرض الصفحة ضمن الاستايل بدون استخدام التمبليتات
// ويمكنك الاستغناء عن كل هذا
echo $stylevar[htmldoctype];
echo $headinclude;
echo $header;
echo $navbar ;
// هنا عملنا الاساسي
$results=$db->query("SELECT * FROM user WHERE userid=12894 ");
// اختيار العضو رقم 12894 في قاعدة البيانات
while ($result=$db->fetch_array($results)) {
// بداية اللوب
echo "اسم المستخدم هو :<b> $result[username]</b><br>";
echo" البريد الالكتروني الخاص به : <b> $result[email]</b>";
}
// نهاية اللوب
// الفوتر
echo $footer;
//############################################################################
// .:: s u d a b e s t . c o m ::.
//############################################################################
?>
هذا الكود يقم بعرض اسم المستخدم الذي رقمه 12894 ويعرض ايضا بريده الالكتروني ، قم بتغير هذا الرقم كما تريد وقم بتنفيذه ،
واتمنى احد يطبق على هذا الموضوع ويعرض لنا المنتدى الذي رقمه 2 مثلا ؟
ولكم جزيل الشكر وتمنى اكن قد افدتكم ولو بالقليل
والسلام عليكم
هذا الموضوع منقول من شبكة الوافي التطويرية[/align]
مواقع النشر (المفضلة)