<!DOCTYPE html>
<html lang="fr">
    <?php 
        // var titre_de_la_page : chaine; 
        // titre_de_la_page = "Administration du Blog";
        $titre_de_la_page = "Administration du Blog";
        $class_de_la_page = "admin";
        //si on ne veut pas avoir un affichge de message d'erreur on peut commencer la ligne par @
        @ $mysqli = new mysqli("localhost", "root", "", "b1bak");
        if ($mysqli->connect_errno) {
            $class_de_la_page = "error";
        }
    ?>
    <head>
        <title><?php echo $titre_de_la_page ?></title>
        <style>
            body { font-family:sans-serif; font-size:10px; }
            .error { background-color:#FFCC99;}
            .success { background-color:#99FF99;}
        </style>  
    </head>
    <body class="<?php echo $class_de_la_page; ?>">
        <h1><?php echo $titre_de_la_page ?></h1>
        <?php 
            // vérification des saisies
            $titre_de_article = "";
            $contenu_de_article = "";
            $erreur_de_soumission = false;
            if(!empty($_POST['titre'])) {
                $titre_de_article = $_POST['titre'];
            }
            elseif(isset($_POST['titre'])) {
                $erreur_de_soumission = true;
            }
            if(!empty($_POST['contenu'])) {
                $contenu_de_article = $_POST['contenu'];
            }
            elseif(isset($_POST['contenu'])) {
                $erreur_de_soumission = true;
            }
            if($erreur_de_soumission) {
                echo "<div class='error'>Il manque quelque chose ! </div>";
            }
            elseif(!empty($titre_de_article)) {
                $sql = "INSERT INTO `article` (`id_article`, `titre`, `contenu`, `date`) 
                VALUES (NULL, ?, ?, NOW()); ";
                $requete = $mysqli->prepare($sql);
                //https://www.php.net/manual/en/mysqli-stmt.bind-param.php
                $requete->bind_param('ss',$titre_de_article,$contenu_de_article);
                $resultat = $requete->execute();

                if($resultat) {
                    echo "<div class='success'>Article enregistré !</div>";
                    $titre_de_article = "";
                    $contenu_de_article = "";                    
                }
                else {
                    echo  "Error description: " . $mysqli -> error;
                    echo $sql;
                }
            }
        ?>
        <form action="" method="post">
            <label for="titre">le titre</label>
            <br/>
            <input type="text" required 
                id="titre" 
                name="titre" value="<?php echo $titre_de_article ?>" />
            <br/>
            <label for="contenu">le contenu</label>
            <br/>
            <textarea required 
              id="contenu" name="contenu"><?php echo $contenu_de_article; ?></textarea>
            <br/>
            <button type="submit">envoyer</button>        
        </form>

        <?php 
            // si une erreur se produit alors un numero d'erreur est intialisé
            if ($mysqli->connect_errno) 
            {
                echo "Échec lors de la connexion à MySQL : (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
            }
            else 
            {
                $resultat = $mysqli->query('SELECT * FROM `article`');
                echo "<br/>".$resultat->num_rows." articles dans la base";
                while ( $ligne_de_resultat = $resultat->fetch_array(MYSQLI_ASSOC) ) 
                { 
                    echo "<h2>".$ligne_de_resultat['titre']."</h2>";
                }
            }
        ?>
    </body>
</html>