10:52 AM |الساعة الآن   
 
العودة ملتقى الموظف الجزائرى  :: 

منتدى التكنولوجيا والاعلام الالى

 :: 

الكمبيوتر والإنترنت






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

الرئيسيةالبوابةبحـثس .و .جدخولالتسجيل
اعلان هام للمسجلين الجدد :بمجرد التسجيل يتم إرسال كود التفعيل إلى حسابك .. أي الإيميل الذي وضعته عند التسجيل بالمنتدى ... إذهب إلى علبة البريد فإذا لم تجده في الرسائل الواردة حاول أن تبحث عنه في صندوق بريد الغير مرغوب فيه SPAM



شرح دوال Mysqli


شاطر
 #1  
18/12/2013, 4:27 pm
 
 
 
انثى
الاقامة : الجزائر
المشاركات : 29
نقاط : 83
تاريخ التسجيل : 17/12/2013
العمل : طالبة
افتراضيشرح دوال Mysqli

بعد اقرار موقع php بحذف دوال mysql

في الاصدار 5.5

فتوجب علينا استخدام دوال Mysqli أو PDO


اليوم راح نشرح 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();  
الحمد الله كملنا 


ان شاء الله في الايام الثادمه احاول ان اشرح لكم الطريقه العادية


يله في امان الله







 
الإشارات المرجعية


  
وما من كاتب إلا سيفنى . ويبقي الدهر ما كتبت يداه



تعليمات المشاركة
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى

BB code is متاحة
كود [IMG] متاحة
كود HTML متاحة