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

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



  • [دورة]:
19-09-2010 11:44 صباحاً
abu_Rabih
معلومات الكاتب
بسم الله الرحمن الرحيم

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

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

يتبع

look/images/icons/i1.gif بناء كلاس الإتصال بقاعدة البيانات
  19-09-2010 12:59 مساءً   [1]
abu_Rabih
معلومات الكاتب
لنبدأ على بركة الله ...
أولا في بداية الصفخة عليك وضع وسم بداية ملف php والذي هو :
CODE
<?php

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


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

هذا الكائن أطلقت عليه اسم هو SQL يمكنك تغييره كما تريد شريطة أن يبدأ الاسم بحرف انجليزي كبير بناء كلاس الإتصال بقاعدة البيانات
ثم نحدد الأساليب أو صفات هذا الكائن (راجع دورة 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]
Mr.Php
معلومات الكاتب
رائع أخي الكريم ما شاء الله ما شاء الله

look/images/icons/i1.gif بناء كلاس الإتصال بقاعدة البيانات
  19-09-2010 07:44 مساءً   [3]
AHMED
معلومات الكاتب
جزاك الله خيرا اخى الفاضل و بارك لك

look/images/icons/i1.gif بناء كلاس الإتصال بقاعدة البيانات
  20-09-2010 12:54 مساءً   [4]
PhpMax
معلومات الكاتب
جزاك الله كل خير,

look/images/icons/i1.gif بناء كلاس الإتصال بقاعدة البيانات
  20-09-2010 01:38 مساءً   [5]
abu_Rabih
معلومات الكاتب
عدنا لنكمل معكم بناء دوال هذا الكائن ...
الدالة التالية سنكتبها بالشكل :
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 يعني يجب عليك وضعها شئت أم أبيت
بناء كلاس الإتصال بقاعدة البيانات
الأن لاحظ استخدمنا الشرط
CODE
 if (!$connect)
					 {
					 return $this->error("Ther is a problem in connection ");
					 }

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

return $connect;

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

look/images/icons/i1.gif بناء كلاس الإتصال بقاعدة البيانات
  09-09-2011 07:31 صباحاً   [6]
محمد الصاوي
معلومات الكاتب
اقتبـاس ،، يتبع ..
و نحن قيد الانتظار بناء كلاس الإتصال بقاعدة البيانات



الكلمات الدلالية






الساعة الآن 06:01 PM