ربط PHPبقواعد بيانات oracle - للكاتب : dr-dre67

في هذا الدرس سنتعلم ربط برنامجنا المبرمج بلغة الPhp بقاعدة بيانات اوراكل Oracle و كما نعلم ان انه عند الإتصال بسيرفر لتشغيل قواعد بيانات اوركل وإرسال تعليمات PL/SQL و هي الـSQL الخاصة بالأوراكل على سيرفرات Oracle 7 و Oracle 8i

و الدالة التي تمكننا من الإتصال بقواعد البيانات اوراكل عن طريق الـphp لها رجعية الى مكتبة الـoracle و هي OCI8 و هي الـOracle Call Interface لذلك نلاحظ بداية جميع الدوال(في الـphp) الخاصة بالOracle بعبارة OCI

الإتصال بالسيرفر Oracle


الإتصال بقاعدة البيانات اوراكل يكون بإستعمال OCILogOn

كود PHP:


$etissal = OCILogOn("كلمة المرور", "اسم المستخدم", $bdd); // $bdd = اسم القاعدة





الإتصال بالقاعدة bdd$


و للإتصال بالقاعدة bdd التي تم تحديدها في بداية الإتصال بالسيرفر

كود :


MA_BDD =
(DESCRIPTION =
(ADDRESS =
(PROTOCOL = TCP)
(HOST = thesoft.oracle.server.com)
(PORT = 1521)
)
(CONNECT_DATA = (SID = ORACLE)
)





ثم بعد اكمال الإتصال يجب ان نقوم باخذ استعلامات الـSQL و ذلك بإستعمال OCIParse

كود PHP:


$istelam= OCIParse($etissal, "SELECT * FROM table");




ثم بعد الإتصال بالجدول المحدد اخذ الإستعلام SQL منه يجب تشغيل نتيجة الإتصال بإستعمال OCIExecute

كود PHP:


OCIExecute($istelam);






الأن نمر لمرحلة قرائة المعلومات المخزنة داخل الجداول و سنستعمل الدالتان OCIFetch و OCIResult

مثلا نحن نحتاج الى اضهار اسماء التلاميذ الذين تحصلو على معدل فوق الـ10

كود PHP:


$istelam = OCIParse($etissal, "SELECT * FROM talamid WHERE moadal >= 10");
OCIExecute($istelam);
$bidaya = 0;
while (OCIFetch($istelam)) {
$bidaya++;
echo OCIResult($istelam, "TALAMID")." وجدنا ";
echo OCIResult($istelam, "MOADAL")." تلميذ\n";
}
OCIFreeStatement($istelam);
echo "تلميذ $bidaya تحصل على المعدل ";




و شكرا
 

جميع الحقوق محفوظة © ذي سوفت 2004