- الرئيسية
- ما الجديد !
-
الصفحات▼
الصفحات
أهلا وسهلا بك زائرنا الكريم في منتدى دعم PBBoard الرسمي، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .
بناء كلاس الإتصال بقاعدة البيانات
-
- [دورة]:
-
19-09-2010 11:44 صباحاً
-
abu_Rabihمعلومات الكاتبالأعضاءعضو فعال
- انضم في :
- 02-08-2009
- رقم العضوية :
- 78
- المشاركات :
- 245
- الدولة :
- الجمهورية العربية السورية
- الجنس:
- تاريخ الميلاد :
- 2-12-1990
- قوة السمعة:
- 678
-
بسم الله الرحمن الرحيم
بعد أن تعلمنا في دورة مستقلة أساسيات الــOPP سنتعلم اليوم برمجة كلاس أو كائن مهمته هي
الإتصال بقاعدة البيانات ... لجلب المعلومات منها أو ادخال أو حذف المعلومات
منها
بداية سنأخذ لمحة بسيطة عن قاعدة البيانات ..
إن قاعدة البيانات الأكثر استخدما مع OOP هي من النوع MYSQL أو MYSQLI
وهي النوع المعترف و المستخدم بكثرة في بناء تطبيقات PHP العامة ...
تتألف قاعدة البيانات من مجموعة جداول في كل جدول يحوي مجموعة حقول نستطيع ادخال القيم فيها
أو استخراجها منها عن طريق أوامر PHP لكن يلزمني بداية كائن يمكنني من الإرتباط بالقاعدة كي
أستطيع تنفيذ أوامرها
... هذا الكلاس هو ماسنتعرف كتابته ..لذلك جهّز نفسك للإنطلاق !
يتبع
-
-
بناء كلاس الإتصال بقاعدة البيانات19-09-2010 12:59 مساءً [1]
-
abu_Rabihمعلومات الكاتبالأعضاءعضو فعال
- انضم في :
- 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( # # -----------------------------------------------------------------------------------------#
تستطيع كتابة ماتشاء داخل هذا التعليق وحتى تستطيع الكتابة العربية لكن الأفضل الكتابة الإنكليزية
الأن سنبدأ بإنشاء الكائن وهو كما تعلمناه في دورة OOP يجب أن يبدأ بكلمة class كالتالي :
CODEclass SQL {
هذا الكائن أطلقت عليه اسم هو SQL يمكنك تغييره كما تريد شريطة أن يبدأ الاسم بحرف انجليزي كبير
ثم نحدد الأساليب أو صفات هذا الكائن (راجع دورة oop )
وهي كالتالي :
CODEvar $Host = "localhost"; var $DB_User = ""; var $DB_Pass = ""; var $DB_Name = "";
لاحظ أننا حددنا الاساليب أو المتغيرات التي سأستخدمها لاحقا داخل وخارج الكائن
نبدأ الأن ببناء الخصائص وهي الوظائف التي سيقوم بها الكائن (باختصار هي الدوال )
لنبدأ مع الدالة الاولى :
CODEfunction 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 ...
بعد ذلك وضعناوهذه تعني أن المتغير الذي عرفناه في البداية وقلنا عنه أنه من الاساليب -اذا تذكرت - هو مساوي للبارمتر الاول من دالة setinfo تذكر أن this تستخدم لاستدعاء متغير أو دالة ضمن الكائن وقد سبق شرحهCODE$this->Host = $Host;
CODE$this->DB_User = $DB_User; $this->DB_Pass = $DB_Pass; $this->DB_Name = $DB_Name;
نفس الشرح السابق !
يتبع
تحياتي أبو ربيع
-
-
بناء كلاس الإتصال بقاعدة البيانات19-09-2010 05:40 مساءً [2]
-
Mr.Phpمعلومات الكاتبالأعضاءعضو متألق
- انضم في :
- 05-09-2010
- رقم العضوية :
- 667
- المشاركات :
- 753
- الدولة :
- ســــــــــــــــوريا وبكل اعتزاز
- الجنس:
- تاريخ الميلاد :
- 1-7-1985
- الدعوات:
- 2
- قوة السمعة:
- 2024
-
رائع أخي الكريم ما شاء الله ما شاء الله
-
-
بناء كلاس الإتصال بقاعدة البيانات19-09-2010 07:44 مساءً [3]
-
AHMEDمعلومات الكاتبالأعضاءعضـو ستـار
- انضم في :
- 20-07-2009
- رقم العضوية :
- 18
- المشاركات :
- 2796
- الجنس:
- تاريخ الميلاد :
- 1-10-1981
- الدعوات:
- 31
- قوة السمعة:
- 4978
- موقعي:
- زيارة موقعي
-
جزاك الله خيرا اخى الفاضل و بارك لك
-
-
بناء كلاس الإتصال بقاعدة البيانات20-09-2010 12:54 مساءً [4]
-
PhpMaxمعلومات الكاتبالأعضاءعضو سوبر ستار
- انضم في :
- 19-03-2010
- رقم العضوية :
- 425
- المشاركات :
- 3236
- الجنس:
- الدعوات:
- 5
- قوة السمعة:
- 9942
-
جزاك الله كل خير,
-
-
بناء كلاس الإتصال بقاعدة البيانات20-09-2010 01:38 مساءً [5]
-
abu_Rabihمعلومات الكاتبالأعضاءعضو فعال
- انضم في :
- 02-08-2009
- رقم العضوية :
- 78
- المشاركات :
- 245
- الدولة :
- الجمهورية العربية السورية
- الجنس:
- تاريخ الميلاد :
- 2-12-1990
- قوة السمعة:
- 678
-
عدنا لنكمل معكم بناء دوال هذا الكائن ...
الدالة التالية سنكتبها بالشكل :
CODEfunction 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 يعني يجب عليك وضعها شئت أم أبيت
الأن لاحظ استخدمنا الشرط
CODEif (!$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 تعتني بالأخطاء الظاهرة في الكلاس
ثم أغلقنا القوس الكبير }
الأن أخر أمر في هذه الدالة وهو
CODEreturn $connect;
كما ذكرنا سابقا الأمر return يعني "أربج أو عد بالنتيجة " ثم نضع بعده اسم المتغير connect
أي "طالما أننا نستطيع تنفيذ المتغير conncet عليك أن تعود بنتيجته كي أستخدمها لاحقا لأتصل بقاعدة البيانات "
أي سؤال أنا جاهز !
يتبع ..
تحياتي أبو ربيع
-
-
بناء كلاس الإتصال بقاعدة البيانات09-09-2011 07:31 صباحاً [6]
-
محمد الصاويمعلومات الكاتبالأعضاءعضـو بـارز
- انضم في :
- 31-10-2010
- رقم العضوية :
- 901
- المشاركات :
- 1155
- الدولة :
- مصر
- الجنس:
- تاريخ الميلاد :
- 20-2-1990
- الدعوات:
- 1
- قوة السمعة:
- 3272
- موقعي:
- زيارة موقعي
-
اقتبـاس ،، يتبع ..
و نحن قيد الانتظار
-
-