دورة mysql للمبتدئين الدرس الأول


فهاد الدورة ديال mysql للمبتدئين غادي نشوفوا كيفاش نتعاملو مع قواعد البيانات لي هي حاجة مهمة فالبرمجة ولي كتمكنا باش نخزنوا ونسترجعوا معلومات باستمرار.
فهاد الدرس الأول غادي نشوفوا كيفاش نتكونكطاو مع mysql من بعد غادي نشوفوا كيفاش نزيدو قواعد بيانات ونتكونيكطاو معها.


1- الإتصال ب mysql

ف mysql هو واحد النظام لي كيمكنا باش يكونوا عندنا قواعد بيانات سواء ف localhost أو en ligne يلا بغيتي تطيليشارجيه سير للموقع هنا.
ولكن احسن حاجة هي نخدموا ب phpmyadmin لي حتى هو كيمكنا باش نتعاملوا مع قواعد البيانات به باش غادي نخدم انا فقط غادي تمشي ل localhost/phpmyadmin فالمتصفح ديالك.
دبا باش نزيدو قواعد بيانات ديالنا خص ضروري منتكونيكطا مع mysql وباش ندير هادشي كاين واحد ل extension سميتو mysqli لي كيمكنا من هادشي فالمثال لي عندنا زدنا 3 ديال les variables :
- host$ لي فيها localhost ديالنا.
- user$ لي هو username لي عطيناه root لي هو لي كيمكن باش نتكونيكطا ل mysql par défaut.
- password$ لي هي كلمة المرور كتكون خاوية par défaut.
منبعد زدت variable $con لي عطيتها objet من mysqli لي كتاخد ل host,$user,$password$ منبعد كنتحقق يلا كانت ل connexion كن afficher رسالة نجاح مكانتش كن afficher رسالة خطأ الكود لي زدنا هو :

                                //index.php

<?php
    $host = 'localhost';
    $user = 'root';
    $password = '';

    $con = new mysqli($host,$user,$password);

    if($con->connect_error){
        die('erreur de connexion');
    }
    echo 'connexion réussie';
?>
                            

2- غلق الإتصال مع mysql

فدبا درنا la connexion مع mysql خصنا نسدوها هي كتسد اتوماتيكيا ملي كيتسالا الكود ولكن كاين fonction close.
فالمثال لي عندنا سدينا la connexion من بعد معيطنا لل fonction close.
الكود لي زدنا هو :

                                //index.php

<?php
    $host = 'localhost';
    $user = 'root';
    $password = '';
    //open connection
    $con = new mysqli($host,$user,$password);

    if($con->connect_error){
        die('erreur de connexion');
    }
    echo 'connexion réussie';
    //close connection
    $con->close();
?>
                            

3- إضافة قاعدة البيانات

باش نزيدو قاعدة البيانات ديالنا ممكن تزيدها ف phpmyadmin تمشي ل nouvelle base de données تدخل سميتها وتكليكي على créer.
ولكن هنا غادي نشوفوا كيفاش نزيدوها بالكود فباش نقول ل mysql ينفذ شي حاجة كنخدم بواحد الحاجة سميتها les requêtes كنعطيه requête هو كينفذها.
فالمثال لي عندنا زدنا requête لي عطيناها ل variable $sql منبعد خدمت بال fonction query لي كتنفذها ف requête ديالنا كت créer base de données سميتها php_course.
منبعد كنتحقق يلا دازت كن afficher رسالة نجاح مدازتش كن afficher رسالة خطا الكود لي زدنا هو :

                                //index.php

<?php
    $host = 'localhost';
    $user = 'root';
    $password = '';
    //open connection
    $con = new mysqli($host,$user,$password);

    if($con->connect_error){
        die('erreur de connexion');
    }
    echo 'connexion réussie';
    //add database
    $sql = "CREATE DATABASE php_course";
    if ($con->query($sql) === TRUE) {
        echo "base de données ajoutée";
    } else {
        echo "Erreur : " . $con->error;
    }
    //close connection
    $con->close();
?>
                            

4- إضافة الجداول أو les tables

باش نزيد جدول كنزيد requête لي غادي تمكني من هادشي فالمثال لي عندنا كنزيد variable $db لي فيها سمية قاعدة البيانات لي زدنا منبعد كنزيدها فل connexion.
منبعد زدنا requête ديالنا لي كتمكن باش نزيد table سميتها users فكنحدد les champs لي هما id,nom,prenom,email وكنحدد حتى le type ديالهم عندي:
- INT لي كتعني عدد عشري و UNSIGNED لي كتعني ميكونش صغر من الصفر و AUTO INCREMENT لي كتعني كيتزاد بواحد اتوماتيكيا كلما زدنا شي واحد ثم PRIMARY KEY لي كنعطيها لواحد le champ لي بيه كنميزو الجدول.
- VARCHAR لي كتعني STRING وكنعطي الطول هنا حددناه ف 30 للإسم و 50 للإيمايل.
منبعد خدمت بال fonction query لي كتنفذ requête وكتعرض رسائل النجاح والفشل الكود لي زدنا هو :

                                    //index.php

<?php
    $host = 'localhost';
    $user = 'root';
    $password = '';
    $db = 'php_course';
    //open connection
    $con = new mysqli($host,$user,$password,$db);

    if($con->connect_error){
        die('erreur de connexion');
    }
    echo 'connexion réussie';
    //add database
    // $sql = "CREATE DATABASE php_course";
    // if ($con->query($sql) === TRUE) {
    //     echo "base de données ajoutée";
    // } else {
    //     echo "Erreur : " . $con->error;
    // }
    //add users table
    $sql = "
        CREATE TABLE users(
            id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
            nom VARCHAR(30) NOT NULL,
            prenom VARCHAR(30) NOT NULL,
            email VARCHAR(50)
        )
    ";
    if ($con->query($sql) === TRUE) {
        echo "table ajoutée";
    } else {
        echo "Erreur : " . $con->error;
    }
    //close connection
    $con->close();
?>
                                

5- إضافة مستخدم لقاعدة البيانات

فباش نزيد مستخدم فقاعدة البيانات عندي requête INSERT لي كتمكن باش نزيدو des données ف la base de données ديالنا.
كندير requête كنقول INSERT INTO users يعني كنزيد ف table users كنعطي الحقول هنا حددت nom,prenom,email ل id كيتزاد اتوماتيكيا وكنعطي القيم لي بغيت ف VALUES.
منبعد كنتحقق يلا دازت كن afficher رسالة نجاح مدازتش كن afficher رسالة خطأ الكود لي زدنا هو :

                                    //index.php

<?php
    $host = 'localhost';
    $user = 'root';
    $password = '';
    $db = 'php_course';
    //open connection
    $con = new mysqli($host,$user,$password,$db);

    if($con->connect_error){
        die('erreur de connexion');
    }
    echo 'connexion réussie';
    //add database
    // $sql = "CREATE DATABASE php_course";
    // if ($con->query($sql) === TRUE) {
    //     echo "base de données ajoutée";
    // } else {
    //     echo "Erreur : " . $con->error;
    // }
    //add users table
    // $sql = "
    //     CREATE TABLE users(
    //         id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    //         nom VARCHAR(30) NOT NULL,
    //         prenom VARCHAR(30) NOT NULL,
    //         email VARCHAR(50),
    //     )
    // ";
    // if ($con->query($sql) === TRUE) {
    //     echo "table ajoutée";
    // } else {
    //     echo "Erreur : " . $con->error;
    // }
    $sql = "INSERT INTO users(nom,prenom,email) VALUES ('samadi','samir','samir@email.com')";
    if ($con->query($sql) === TRUE) {
        echo "utilisateur ajouté";
    } else {
        echo "Erreur : " . $con->error;
    }
    //close connection
    $con->close();
?>