الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

حد تعامل عن طريق Php مع قواعد بيانات الاوركل

بدأه rewsh في 2 يناير 2009 · 16 رد · 1,224 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه

هل احد جرب التعامل وربط قواعد بيانات الاوركل بال PHP

#2

التعامل معها سهل بشكل عام لكن التعامل مع oracle functions فيه بعض الصعوبة ونقص في المصادر

موقع ممتاز يعلمك بطريقة سهلة خاصة التعامل مع stored procedures and functions:

http://www.exzilla.net/docs/php-oci8/php-plsql.php

من موقع البشب الرسمي:

http://www.php.net/oracle

#3

استخدم ال ODBC او ال php_oci8

امثله

ODBC ماهو

سبحان الله وبحمده *** سبحان الله العظيم

www.quraany.com

www.arabcs.com

#4

جميل جدا الامثله الموضحه

بس ناقصها شئ او انا لم ارها جيدا

هو الان اين اركب قاعده بيانات الاوركل لكي انشأ الاتصال بينها وبين والphp

يعني هو عامل connection

  // Before running, create the table:
  //   CREATE TABLE MYTABLE (mid NUMBER, myd VARCHAR2(20));

  $conn = oci_connect('scott', 'tiger', 'orcl');

  $query = 'INSERT INTO MYTABLE VALUES(:myid, :mydata)';

جميل

بس فين قاعده البيانات الهايعمل معاها الكونكت اضعها فين

في Mysql هو عارف المسار

طيب هنا فين

تم تعديل هذه المشاركة بواسطة rewsh في 3 يناير 2009 في 13:19

#5

أولاً تأكد من أن مكتبة OCI8 مفعلة عندك في Apache في ملف httpd.conf

تعطيها مسار قاعدة البيانات، مثلاً:

$conn = oci_connect('scott', 'tiger', '192.168.1.1/pathtodb/dbname');
#6

192.168.1.1

هل ممكن ان يكون هكذا ام انا فهمت خطأ

http://localhost/db.db

تم تعديل هذه المشاركة بواسطة rewsh في 3 يناير 2009 في 19:20

#7

أول شي غلطت بالكود في مشاركتي الأخيرة، ثاني شي في حالتين للربط:

1- الحالة الندرة أن تكون قاعدة بيانات الأوراكل على المخدم المحلي وبهذه الحالة:

oci_connect("user", "password", "127.0.0.1:1234/dbname")

127.0.0.1 هو أي بي المخدم المحلي و 1234 هو البورت الذي يستخدمه الأوراكل (وضعت هذا البورت كمثال ولكن يجب أن تضع البورت الحقيقي المستخدم)

2- الحالة الأكثر شيوعاً أن يكوم مخدم الأوراكل مستقل عن مخدم apache:

oci_connect("user", "password", "192.168.0.5:1234/dbname")

جيث 192.168.0.5 هو أي بي سيرفر الأوراكل وبالنسبة للبورت نفس الشيء تأكد منه وضع البورت الفعلي

dbname هو اسم قاعدة البيانات فقط وليس المسار كاملاً مثلاً empolyees

#8

جزاك الله خيرا

جاري التجربه وان شاء الله تعمل بنجاح

اظن نفس طريقه ال Mysql في الاستعلامات وغيره

#9
اقتباس
اظن نفس طريقه ال MySQL في الاستعلامات وغيره

لأ فقط في عبارات SQL، هل قرأت الصفحة السابقة أم لا!!!!

http://www.php.net/manual/en/function.oci-connect.php

#10
خالد_الحوراني كتب:
لأ فقط في عبارات SQL، هل قرأت الصفحة السابقة أم لا!!!!

http://www.php.net/manual/en/function.oci-connect.php

ألقيت عليها نظرا نعم

انا فعلا اقصد في عبارات sql

-----------

هل الاوركل تركب على سيرفيرات اللينكس ام ليها

--------

طب سؤال هل الافضل ان اعمل على

نظام stored procedures

؟

وكيف سيعود لي الناتج

مثلا انا في ال Mysql لو عملت selectالعائد لك في array كيف سيكون لو استخدمنا

stored procedures

#11
اقتباس
هل الاوركل تركب على سيرفيرات اللينكس ام ليها

تعمل على أغلب الأنظمة الشهيرة (Apple, IBM, HP, Windows, Linux, Sun)

اقتباس
طب سؤال هل الافضل ان اعمل على

نظام stored procedures

؟

وكيف سيعود لي الناتج

هذا يعتمد على مدير قاعدة البيانات، فمثلاً في حالتي اسخدمت stored procedure لأن مدير قاعدة البيانات منع استخدام select (للسرية) على الجدول وأنشأ stored procedure للتعامل معها، اطبع الناتج في php لترى شكله هل هو مصفوفة أم لا، هذا يعتمد على ماذا يرجع stored procedure الذي أنشأته

هل تم الاتصال مع الأوراكل؟

تم تعديل هذه المشاركة بواسطة خالد_الحوراني في 4 يناير 2009 في 02:29

#12
خالد_الحوراني كتب:
أول شي غلطت بالكود في مشاركتي الأخيرة، ثاني شي في حالتين للربط:

1- الحالة الندرة أن تكون قاعدة بيانات الأوراكل على المخدم المحلي وبهذه الحالة:

oci_connect("user", "password", "127.0.0.1:1234/dbname")

127.0.0.1 هو أي بي المخدم المحلي و 1234 هو البورت الذي يستخدمه الأوراكل (وضعت هذا البورت كمثال ولكن يجب أن تضع البورت الحقيقي المستخدم)

2- الحالة الأكثر شيوعاً أن يكوم مخدم الأوراكل مستقل عن مخدم apache:

oci_connect("user", "password", "192.168.0.5:1234/dbname")

جيث 192.168.0.5 هو أي بي سيرفر الأوراكل وبالنسبة للبورت نفس الشيء تأكد منه وضع البورت الفعلي

dbname هو اسم قاعدة البيانات فقط وليس المسار كاملاً مثلاً empolyees

اسف لتاخير في الرد كان لدي امتحانات

طب انا فعلا جيت اعمل كونكت الان بقواعد البيانات مشكله بسيطه

طب لو انا مش عامل انستول للاوركل على الجهاز

ولكن لدي قاعده البيانات

الا يمكن استخدام الطريقه الاولى هنا

لكنك ذكرت انه يجب ان اضع بورت الاوركل طب لماذا؟ اليست قاعده بيانات مثل غيرها الان ولا احتاج بورت خاص بيها؟

#13
اقتباس
طب لو انا مش عامل انستول للاوركل على الجهاز

ولكن لدي قاعده البيانات

الا يمكن استخدام الطريقه الاولى هنا

لست متأكداً ولكن 99% محرك الأوراكي ضروري في السيرفر لأنها مثل أي قاعدة بيانات، توابع ال php هي تغليف للمهام الموجودة في محرك قاعدة البيانات وليست محرك بحد ذاتها

اقتباس
لكنك ذكرت انه يجب ان اضع بورت الاوركل طب لماذا؟ اليست قاعده بيانات مثل غيرها الان ولا احتاج بورت خاص بيها؟

كل شيء في العالم له بورت :D حتى mysql لها بورت وغالباً مايتركه الناس على الافتراضي 3306 وبالنسبة للأوراكل أيضاً لها بورت (لا أعرف أين يتم تغييره ولكن ابحث بالغوغل أو في قسم الأوراكل بالمنتدى)

ماقلت لي تم الاتصال ولا لأ؟

تم تعديل هذه المشاركة بواسطة خالد_الحوراني في 5 يناير 2009 في 13:41

#14

تمام انا هاشوف البورت الان حق الاوركل لكي اجرب

انا محتاج البورت عشان اعمل الاتصال هاشوفه الان واطرحه ان شاء الله

#15

بانتظارك أخي الكريم

#16

تم الاتصال بقاعده البيانات عن طريق كتابه اسم القاعده نفسها

لان اكتشفت ان البورت واحد

وسوف اطرح موضوع جديد يشرح الاتصال وطرق الاستخدام

سوف اتكلم من هذه العضويه حيث اني كنت استخدم عضويه صديقي

#17

بارك الله فيك بانتظارك نحن

ولا تضيعنا مرة ثانية حفظت اسمك القديم :D

مواضيع مشابهة