أهلا وسهلا بك زائرنا الكريم في منتدى دعم PBBoard الرسمي، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .

بناء كلاس الإتصال بقاعدة البيانات

بسم الله الرحمن الرحيم بعد أن تعلمنا في دورة مستقلة أساسيات الــOPP سنتعلم اليوم برمجة كلاس أو كائن مهمته هي الإتصال بقاعدة البيانات ... لجلب ا



  • [دورة]:
19-09-2010 11:44 صباحاً
معلومات الكاتب ▼
تاريخ الإنضمام : 02-08-2009
رقم العضوية : 78
المشاركات : 245
الدولة : الجمهورية العربية السورية
الجنس :
تاريخ الميلاد : 2-12-1990
قوة السمعة : 678
بسم الله الرحمن الرحيم

بعد أن تعلمنا في دورة مستقلة أساسيات الــOPP سنتعلم اليوم برمجة كلاس أو كائن مهمته هي
الإتصال بقاعدة البيانات ... لجلب المعلومات منها أو ادخال أو حذف المعلومات smile منها

بداية سنأخذ لمحة بسيطة عن قاعدة البيانات ..
إن قاعدة البيانات الأكثر استخدما مع OOP هي من النوع MYSQL أو MYSQLI
وهي النوع المعترف و المستخدم بكثرة في بناء تطبيقات PHP العامة ...
تتألف قاعدة البيانات من مجموعة جداول في كل جدول يحوي مجموعة حقول نستطيع ادخال القيم فيها
أو استخراجها منها عن طريق أوامر PHP لكن يلزمني بداية كائن يمكنني من الإرتباط بالقاعدة كي
أستطيع تنفيذ أوامرها cool ... هذا الكلاس هو ماسنتعرف كتابته ..لذلك جهّز نفسك للإنطلاق !

يتبع

look/images/icons/i1.gif بناء كلاس الإتصال بقاعدة البيانات
  19-09-2010 12:59 مساءً   [1]
معلومات الكاتب ▼
تاريخ الإنضمام : 02-08-2009
رقم العضوية : 78
المشاركات : 245
الدولة : الجمهورية العربية السورية
الجنس :
تاريخ الميلاد : 2-12-1990
قوة السمعة : 678
لنبدأ على بركة الله ...
أولا في بداية الصفخة عليك وضع وسم بداية ملف php والذي هو :
CODE
<?php

ثم نكتب تعليقا (التعليق هو عبارة عن حقوق تظهر أعلى صفحة الـــphp دون أن تؤئر على البرمجة أو حتى تظهر لدى طباعة الصفحة ) يوجد عدة طرق لكتابة التعليقات منها استخدام // قبل التعليق أو /* لكنني أفضل الطريقة التالية :
CODE
# ------------------------------------------------------------------------------------------# 
# Database File - PHP Content Management System # 
# Copyright (c) 2010 Hussein Hag Ahmad(abu_Rabih( # 
# -----------------------------------------------------------------------------------------#


تستطيع كتابة ماتشاء داخل هذا التعليق وحتى تستطيع الكتابة العربية لكن الأفضل الكتابة الإنكليزية wink_3
الأن سنبدأ بإنشاء الكائن وهو كما تعلمناه في دورة OOP يجب أن يبدأ بكلمة class كالتالي :
CODE
 
class SQL 
{

هذا الكائن أطلقت عليه اسم هو SQL يمكنك تغييره كما تريد شريطة أن يبدأ الاسم بحرف انجليزي كبير wink_3
ثم نحدد الأساليب أو صفات هذا الكائن (راجع دورة oop )
وهي كالتالي :
CODE
 
var $Host			=	   "localhost"; 
			 var $DB_User	   =	   ""; 
			 var $DB_Pass	   =	   ""; 
			 var $DB_Name		  =	   "";

لاحظ أننا حددنا الاساليب أو المتغيرات التي سأستخدمها لاحقا داخل وخارج الكائن
نبدأ الأن ببناء الخصائص وهي الوظائف التي سيقوم بها الكائن (باختصار هي الدوال )
لنبدأ مع الدالة الاولى :
CODE
 
function setinfo($Host,$DB_User,$DB_Pass,$DB_Name) 
			 { 
					 $this->Host	   = $Host; 
					 $this->DB_User	= $DB_User; 
					 $this->DB_Pass	= $DB_Pass; 
					 $this->DB_Name	= $DB_Name; 
			 }

بدأت الدالة واسميتها setinfo ثم وضعت ضمن قوسين البارمترات التي ستأخذها هذه الدالة وهي
$Host : المستضيف
$DB_User : مستخدم قاعدة البيانات
$DB_Pass : كلمة سر قاعدة البيانات
$DB_Name : اسم قاعدة البيانات
هذه البارمترات سيتوجب علي وضعها عندما أستخدم الدالة setinfo ...
بعد ذلك وضعنا
CODE
$this->Host	   = $Host; 
وهذه تعني أن المتغير الذي عرفناه في البداية وقلنا عنه أنه من الاساليب -اذا تذكرت - هو مساوي للبارمتر الاول من دالة setinfo تذكر أن this تستخدم لاستدعاء متغير أو دالة ضمن الكائن وقد سبق شرحه
CODE
					 $this->DB_User	= $DB_User; 
					 $this->DB_Pass	= $DB_Pass; 
					 $this->DB_Name	= $DB_Name;

نفس الشرح السابق !

يتبع

تحياتي أبو ربيع

look/images/icons/i1.gif بناء كلاس الإتصال بقاعدة البيانات
  19-09-2010 05:40 مساءً   [2]
معلومات الكاتب ▼
تاريخ الإنضمام : 05-09-2010
رقم العضوية : 667
المشاركات : 753
الدولة : ســــــــــــــــوريا وبكل اعتزاز
الجنس :
تاريخ الميلاد : 1-7-1985
الدعوات : 2
قوة السمعة : 2024
رائع أخي الكريم ما شاء الله ما شاء الله

look/images/icons/i1.gif بناء كلاس الإتصال بقاعدة البيانات
  19-09-2010 07:44 مساءً   [3]
معلومات الكاتب ▼
تاريخ الإنضمام : 20-07-2009
رقم العضوية : 18
المشاركات : 2796
الجنس :
تاريخ الميلاد : 1-10-1981
الدعوات : 30
قوة السمعة : 4978
موقعي : زيارة موقعي
جزاك الله خيرا اخى الفاضل و بارك لك

look/images/icons/i1.gif بناء كلاس الإتصال بقاعدة البيانات
  20-09-2010 12:54 مساءً   [4]
معلومات الكاتب ▼
تاريخ الإنضمام : 19-03-2010
رقم العضوية : 425
المشاركات : 3236
الجنس :
الدعوات : 5
قوة السمعة : 9882
موقعي : زيارة موقعي
العضو غائب وآخر دعواهم أن الحمد لله رب العالمين
جزاك الله كل خير,

look/images/icons/i1.gif بناء كلاس الإتصال بقاعدة البيانات
  20-09-2010 01:38 مساءً   [5]
معلومات الكاتب ▼
تاريخ الإنضمام : 02-08-2009
رقم العضوية : 78
المشاركات : 245
الدولة : الجمهورية العربية السورية
الجنس :
تاريخ الميلاد : 2-12-1990
قوة السمعة : 678
عدنا لنكمل معكم بناء دوال هذا الكائن ...
الدالة التالية سنكتبها بالشكل :
CODE

 function sql_connect()
			 {
					 $connect = @mysql_connect($this->Host,$this->DB_User,$this->DB_Pass);
					 if (!$connect)
					 {
return $this->error("Ther is a problem in connection ");
					 }
					 return $connect;
			 }

هذه الدالة أسميتها sql_connect وهي الدالة الرئيسية في الإتصال بقاعدة البيانات ..
عرفنا داخلها متغيرا اسمه $connect وجعلناه مساوي للقيمة :
CODE
@mysql_connect($this->Host,$this->DB_User,$this->DB_Pass);

ماذا تعني هذه القيمة .. لاحظ اذا كنت تذكر أننا قلنا انه يوجد دوال رئيسية أو أساسية وأخرى منشأة
حسنا اذا لسرعة الفهم الدالة mysql_connect هي دالة أساسية يستطيع الحاسوب قراءتها على أنها
"اتصال بقاعدة البيانات " ولاحظ أننا لو وضعنها في محرر php سيكون لونها غير باقي ألوان الكتابة
دلالة على خصوصية هذه الدالة والتي هي الأساس الذي سينفذ الأمر وهو الإتصال بقاعدة البيانات
لاحظ اخي أنني بعد mysql_connect فتحت قوس دلالة على أن هذه الدالة الأساسية تحتاج إلى بارمترات وبدونها لن تعمل الدالة ..ماهي هذه البارمترات ؟
البارمتر الأول : هو المستضيف والذي هو في حالتنا $this->Host
البارمتر الثاني : هو مستخدم قاعدة البيانات وهو عندنا $this->DB_User
البارمتر الثالث : هو كلمة مرور القاعدة $this->DB_Pass
هذه البارمترات ثابتة في حال استخدام الدالة mysql_connect يعني يجب عليك وضعها شئت أم أبيت
biggrin2
الأن لاحظ استخدمنا الشرط
CODE
 if (!$connect)
					 {
					 return $this->error("Ther is a problem in connection ");
					 }

ماذا يعني هذا الشرط ؟؟
كما تعرف أن المتغير $connect وظيفته هي الإتصال بقاعدة البيانات ..لكن في حال فشل بذلك ماذا
يحصل ؟ لذلك وضعت له هذا الشرط حيث قلت في الشرط " اذا كان المتغير $connect غير محقق أعد الخطأ التالي واطبعه على المتصفح Ther is a problem in connection wink_3 "
لاحظ كيف كتبت الشرط if ثم فتحت قوس ثم اشارة تعجب ! وهي تعني "عدم تحقق " ثم اسم المتغير
connect ثم أغلقت القوس وفتحت قوس بدء الأمر {
ثم كتبت return وهي تعني بالإنجليزية " عد " وهنا أيضا أي عد بالنتيجة التالية والتي هي
$this->error("Ther is a problem in connection
لاحظ استخدمن this ثم اسم دالة هي error لكنني لم ابرمج بعد دالة اسمها error فكيف أقوم بكتابتها
وهي غير مبرمجة بعد ضمن الكلاس ؟ blink
شوف أخي من مواصفات المبرمج الناجح أنه يخطط لبرنامجه قبل البدء فيه وأنا خططت لأنني لاحقا سأبرمج دالة اسمها error تعتني بالأخطاء الظاهرة في الكلاس wink_3
ثم أغلقنا القوس الكبير }
الأن أخر أمر في هذه الدالة وهو
CODE

return $connect;

كما ذكرنا سابقا الأمر return يعني "أربج أو عد بالنتيجة " ثم نضع بعده اسم المتغير connect
أي "طالما أننا نستطيع تنفيذ المتغير conncet عليك أن تعود بنتيجته كي أستخدمها لاحقا لأتصل بقاعدة البيانات " cool
أي سؤال أنا جاهز !
يتبع ..
تحياتي أبو ربيع

look/images/icons/i1.gif بناء كلاس الإتصال بقاعدة البيانات
  09-09-2011 07:31 صباحاً   [6]
معلومات الكاتب ▼
تاريخ الإنضمام : 31-10-2010
رقم العضوية : 901
المشاركات : 1155
الدولة : مصر
الجنس :
تاريخ الميلاد : 20-2-1990
الدعوات : 1
قوة السمعة : 3272
موقعي : زيارة موقعي
اقتبـاس ،، يتبع ..
و نحن قيد الانتظار biggrin2

رد جديد موضوع جديد




الكلمات الدلالية
بناء ، كلاس ، الإتصال ، بقاعدة ، البيانات ،









الساعة الآن 08:30 AM