النتائج 1 إلى 3 من 3

الموضوع: شرح دوال Mysqli بالتفصيل

  1. #1
    عضو
    تاريخ التسجيل
    Feb 2014
    المشاركات
    10
    الدولة: Egypt
    معدل تقييم المستوى
    0

    شرح دوال Mysqli بالتفصيل

    تعريف بـMySQLi :

    هي اختصار لكلمة MySQL Improved
    وهي تعني المكتبة المتطورة من MySQL وهي تعتمد على الـObject Oriented Programming مما يجعل من برمجتك تطور هائل في عمليات ادارة قواعد البيانات بالاضافة الي خصائص جديده متطوره حقاً عن MySQL


    ملاحظة :
    في القواعد بينات mysqli توجد طريقتين للاتصال او الاستعلام من القاعده
    وهي الطريق العادية او بطريقه الكائن object

    احنه هسه راح نشرح طريقه الكائن object لانها افضل واسرع عمليا



    الاتصال بقاعده البيانات :

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

    رمز PHP:
    <?php


    $con
    = mysql_connect("localhost","root","1234") or die (mysql_error());

    $chose_db = mysql_select_db("database_name") or die (mysql_error());

    ?>

    فقط كنا نتصل بالسيرفر عن طريق mysql_connect
    وهي تحتوي على ثلاث بارمترات
    ومن ثم نختار القاعده عن طريق mysql_select_db
    وهي تاخذ بارمتر واحد الي هوة اسم القاعده



    الان في mysqli

    فقد تم الاستغناء عن كل هذة واختصارها بسطر واحد يحتوي على اربع بارمترات

    ويتم تشغيلها عن طريق الكائن

    رمز PHP:
    <?php
    $db
    = new mysqli("localhost", "root", "1234", "database_name");
    if(
    $db->connect_error)
    {
    die(
    'Connect Error' : $db->connect_error);
    }
    ?>

    سوف نشرح الكود
    اولا:
    قمنا بعمل متغير للكائن الي هوة db
    ومن ثم شغلنا الكائن new وطلبنا mysqli
    واعطيناه اربع بارمترات

    البارمتر الاول : اسم السيرفر الهوست الافتراضي هوة localhost
    البارمتر الثاني : اسم مستخدم القاعده
    البارمتر الثالث : باسورد اسم مستخدم قاعده البيناتات
    البارمتر الرابع : اسم قاعده البينات


    ملاحظة :

    كنا في السابق نسخدم

    رمز PHP:
    mysql_CODE

    CODE : نقصد هنا هوة امر مثال query او connect أو num_rows
    فيصير الكود هكذا

    رمز PHP:
    mysql_query();
    mysql_connect();
    mysql_num_rows();

    الان هنا في اصدار Mysqli تم تغير طريقه العمل

    قامو بتغير الامر
    رمز PHP:
    mysql_

    الى

    رمز PHP:
    $db->

    هنا حيث المتغير db هوة المتغير الي شغلنا به الامر الاتصال بالقاعده

    ومن ثم بعدها
    رمز PHP:
    ->

    فهنا اصبح كائنه كلاس
    اظنكم جميعا تعرفون الكلاس فلو انشئنا كلاس

    رمز PHP:
    <?php
    class datab
    {

    public function
    query()
    {
    echo
    "هنا الامر";
    }

    }


    ?>

    فلو اردنا تشغيل الكلاس
    نقوم بانشاء متغير ثم نضع يساوي ومن بعدا كلمة new ومن ثمة اسم الكلاس

    رمز PHP:
    $class = new datab;

    ومن ثمن لو اردنا تشغيل فانكشن query
    نضع اسم المتغير الي شغلنا به الكلاس ومن ثم السهم ومن بعدها اسم الكلاس

    رمز PHP:
    $class->query();

    اظن هسه فكرة الكائن وتعويضه بدل mysql افتهمنا المعلومة





    الاستعلام من القاعده :

    1- الادخال

    رمز PHP:
    <?php
    $insert
    = $db->query("INSERT INTO `tbl_name` ('filed1','filed2') VALUES ('value-filed1','value-filed2')");
    ?>

    2- الاختيار من القاعده

    رمز PHP:
    <?php
    $result
    = $db->query("select * from tbl_name");
    ?>

    عمل fetch_array

    رمز PHP:
    <?php

    $result
    = $db->query("select * from tbl_name");

    // fetch_array First

    $row = $result->fetch_array(MYSQLI_NUM);
    echo
    $row['0'];
    echo
    $row['1'];

    // fetch_array secnd

    $row = $result->fetch_array(MYSQLI_ASSOC);
    echo
    $row['username'];
    echo
    $row['password'];

    // fetch_array Third

    $row = $result->fetch_array(MYSQLI_BOTH);
    echo
    $row['0'];
    echo
    $row['username'];
    ?>


    هنا عندما نستخرج البينات من القاعده على شكل مصفوفة جميعها

    تاخذ الامر fetch_array
    عكس mysql التي لها انواع اخرى للاستخراج

    هنا صحيح لها امر واحد هوة fetch_array ولكنها

    سوف تاخذ ثلاثة انواع للاستخراج على شكل مصفوف


    النوع الاول هوة : MYSQL_NUM


    هوة يتم استخراج البينات على شكل مصفوفة ولكن عند طريقه العرض
    نعرض رقم الحقل او الترتيب 0,1,2,3,....الخ
    رمز PHP:
    echo $row['0'];
    echo
    $row['1'];

    النوع الثاني : MYSQL_ASSOC

    هم يتم استخراج البينات على شكل مصفوفة ولكن طريقه عرضها

    على كتابة اسم احقل Filed1,Filed2,....الخ

    رمز PHP:
    echo $row['username'];
    echo
    $row['password'];

    النوع الثالث : MYSQL_BOTH
    هنا يتم الاستخراج على شكل مصفوفة ولكن طريقه العرض
    تكون عن طريق كتابه رقم الحقل واسم الحقل
    رمز PHP:
    echo $row['0'];
    echo
    $row['username'];


    3- الحذف من القاعده

    رمز PHP:
    $db->query("DELETE FROM tbl_name WHERE filed='value-filed'");

    4- التعديل او تحديث البينات في القاعده

    رمز PHP:
    <?php


    $db
    ->query("UPDATE tbl_name SET Filed='value-filed' WHERE 'filed1'='value-filed1'");

    ?>

    حساب عدد الحقول او الجداول :

    نحسب عدد الحقول او الجداول عن طريق الدالة num_rows

    رمز PHP:
    <?php


    $result
    = $db->query("select * from tbl_name");
    $num = $result->num_rows;

    ?>

    ملاحظة هنا لم نقم بوضع متغير تشغيل الكائن ومن ثم num_rows

    بل قمنا بوضع متغير الاستعلام من القاعده الي هوة result

    حيت اصبحت النتيجه

    رمز PHP:
    متغير الاستعلام ->num_rows;

    استخدم insert_id :

    هذة الدالة تقوم باستخراج لنا قمية حقل التلقائي الي راح ينزرع بالقاعده

    ويستخدم عاده مع امر الادخال للقاعده

    طريقه الاستخدام

    رمز PHP:
    $db->insert_id;

    الشرح

    رمز PHP:
    متغير الكائن->insert_id;


    اغلاق الاتصال close :

    يتم اغلاق الاتصال عن طريق

    رمز PHP:
    متغير الكائن->colse();

    التطبيق هكذا

    رمز PHP:
    $db->close();

    الاخطاء Error :

    عندما لاتم تنفيذ العمل او الامر فاننا نحتاج لاظهر الخطأ لكي نعرف ماوع الخطأ في الامر

    ولاظهار الخطأ نكتب

    رمز PHP:
    متغير الكائن->error();

    التطبيق

    رمز PHP:
    $db->error();
    موقع تعليم كورسات شبكات وبرمجة وقواعد بيانات وجرافيك بشروحات عربية ومشاريع مجانية




  2. #2
    عضوية جديدة
    تاريخ التسجيل
    Jan 2015
    المشاركات
    9
    الدولة: Turkey
    معدل تقييم المستوى
    0

    رد: شرح دوال Mysqli بالتفصيل

    موضوع مميز صديقي ويحتاج لممارسة و عملي كثير

  3. #3
    عضوية جديدة
    تاريخ التسجيل
    Oct 2014
    المشاركات
    9
    الدولة: Egypt
    معدل تقييم المستوى
    0

    رد: شرح دوال Mysqli بالتفصيل

    تسلم ايدك

المفضلات

ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •