الإتصال بقاعدة البيانات MySQL
كما ذكرنا بالدرس السابق تستطيع إستخدام مايناسبك سوف نطرح الأمثله لنعطيك كافة الطرق والأساليب الممكنة عند التعامل مع قواعد البيانات من نوع MySQL.
الإتصال بقاعدة البيانات:
لنكون قادرين على التعامل مع قواعد البيانات يجب ان نكون قادرين على الإتصال بالسيرفر الذي يستضيف القاعدة أولا ، سواء كان بجهازك أو بعد رفع ملفات مشروعك على موقعك ، سنضع جميع الأمثلة لكيفية الإتصال بقاعدة البيانات.
بجميع الأمثلة سوف نقوم بتخزين معلومات الإتصال بمتغيرات على حسب الحاجة كالتالي:
- servername عنوان السيرفر غالبا localhost او 127.0.0.1 إذا كان مختلف تأكد من تغيير قيمة هذا المتغير للقيمة الصحيحة
- username اسم المستخدم الذي عن طريقه سنتصل بقاعدة البيانات
- password الرقم السري للمستخدم الذي سوف يتصل بقاعدة البيانات
- dbname اسم قاعدة البيانات المراد الإتصال بها
مثال على MySQLi Object-Oriented:
<?php $servername = "localhost"; $username = "root"; $password = "root"; // إجراء الإتصال $conn = new mysqli($servername, $username, $password); // التحقق من الإتصال if ($conn->connect_error) { die("فشل الإتصال: " . $conn->connect_error); } echo "ثم الإتصال بنجاح";
لاحظ: في هذا المثال استخدمنا الكلاس mysqli لإجراء عملية الإتصال بقاعدة البيانات ، و تخزينه بمتغير conn ، سوف نستخدم هذا المتغير للتعامل مع قاعدة البيانات في جميع أمثلتنا في هذه السلسلة.
مثال على MySQLi Procedural:
<?php $servername = "localhost"; $username = "root"; $password = "root"; // إجراء الإتصال $conn = mysqli_connect($servername, $username, $password); // التحقق من الإتصال if (!$conn) { die("فشل الإتصال: " . mysqli_connect_error()); } echo "ثم الإتصال بنجاح";
لاحظ: هنا استخدمنا الدالة mysqli_connect لإجراء الإتصال بقاعدة البيانات ثم تخزينها بمتغير conn.
ملاحظة: عند إستخدام MySQLi للإتصال بقواعد البيانات انت لست مجبر لتحديد إسم قاعدة البيانات فهو غير مطلوب لإتمام الإتصال ، حيث انه سوف يتم الإتصال بنجاح ، ولكن سوف تحتاج الى تحديد إسم قاعدة البيانات ؛ إذا كنت ترغب بتنفيذ استعلامات محددة لقاعدة بيانات محددة مثل: إضافة جداول ، أو تخزين بيانات ، أو تحديث بيانات ، أو حذفها إلى آخره...
مثال على PDO:
<?php $servername = "localhost"; $username = "root"; $password = "root"; $dbname = "3alampro-mysql"; try { // إجراء الإتصال $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); // تعديل نوع معالج الأخطاء $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "ثم الإتصال بنجاح"; } catch(PDOException $e) { echo "فشل الإتصال: " . $e->getMessage(); }
لاحظ: هنا استخدمنا الكاس PDO لإجراء الإتصال بقاعدة البيانات ثم تخزينها بمتغير conn ، والذي سوف نستخدمه في بقية أمثلتنا للتعامل مع قاعدة البيانات.
ملاحظة: على عكس MySQLi ، عند إستخدام PDO لإجراء اتصال بقواعد البيانات يجب ان تقوم بتحديد إسم قاعدة بيانات فعالة ، وقابلة للإتصال ؛ ليتم الإتصال بدون مشاكل ؛ لكي تستطيع تنفيذ مختلف العمليات بدون أي مشاكل ، لاحظ بهذا المثال عرفنا اسم قاعدة البيانات داخل المتغير dbname لإجراء الإتصال.
إغلاق الإتصال بقاعدة البيانات:
سوف يتم إغلاق الإتصال بقاعدة البيانات مباشرة في نهاية الملف ، أو عند نهاية عمل مشروعك اذا قمت بتضمين الإتصال ببقية ملفات المشروع ، لكن أحيانا ترغب أن تغلق الإتصال قبل ذلك ، نستطيع إغلاق الإتصال باستخدام أحد هذه الأوامر.
مثال على MySQLi Object-Oriented:
$conn->close();
مثال على MySQLi Procedural:
mysqli_close($conn);
مثال على PDO:
$conn = null;