Page suivante Page précédente   Table des matières  

7. Développer des applications Web

Par Silva Anderson afsilva@liberty.edu

Je vais maintenant fermer cette série d'articles Développer des applications Web avec un exemple très utile qui, si vous le comprenez, vous aidera à appliquer le même concept d'applications à d'autres types d'applications en ligne. Je vais traiter de la création de votre propre livret de signet en ligne. Une fois que vous aurez compris cet exemple, vous serez en mesure de faire des opérations assez simples en liant MySQL et php3.

Mais avant de commencer à vous parler du code source de php3 pour l'application de gestion des signets, vous devez tout d'abord créer votre propre table pour stocker votre livret de signet. Il y a plusieurs manières d'administrer des bases MySQL.

Choisissez ce que vs préférez. Pour ce petit projet, je vais vous indiquer la configuration qui convient à vos besoins.

Toutes les informations ci-dessus sont utiles lors du codage de l'application.

NB: Les champs sont des colonnes dans la base de donnés. L'id a été définie pour ne permettre que des entrées uniques dans la base de données (clé primaire). Elle doit s'auto-incrémenter.

Une fois que votre base de données est définie et fonctionne, vous pouvez commencer à coder votre application. Voici comment faire:

Voici le formulaire qui capturera les données et les enverra dans la base de données (ci-joint une copie du listing):


    <HTML>
    <head>
    <title>Les signets d'Anderson < /title>
    < /head>
    <body bgcolor=white>
    <form ACTION="sendbook.php3" METHOD="Post">
          <center><p>Entrez le titre du signet: < /font>

          <input TYPE="text" SIZE="40" NAME="description"> < /p>

          <center><p>Entrez l'URL du signet: < /font>

          <input TYPE="text" SIZE="40" NAME="URL"> < /p> < /center>

          <p><input TYPE="Submit" VALUE="Vérifier"><br>
     < /form>
    < a href="book.php3">Voir les signets<< /a>
    < /body>
    < /html>

Le formulaire ci-dessus comporte deux champs texte: un pour l'adresse, l'autre pour la description. Le tag form indique au navigateur ce qu'il doit faire lorsque l'on appuie sur le bouton Submit. Ici, on appelle le script php3 sendbook.php3 et on envoie les données au script. Le script suivant est le script sendbook.php3. Ce script ouvre une connexion vers une base de données mySQL et place les données provenant du formulaire HTML dans cette base.


         <?php
           // Si l'un des deux champs est vide, ne pas envoyer les données, 
           // mais envoyer un message d'erreur.
           if(!($description=="") || !($URL==""))
           {
 
              // Connexion au serveur de la base de données
              mysql_connect(myserver, myusername, mypassword);
 
              // Connexion à la base de données
              mysql_select_db('mydatabase');
 
              // C'est la requête pour insérer les données provenant de  $description et $URL
              // dans la table signet et les colonnes description et URL
              mysql_query("insert into signet(description, URL) values ('$description', '$URL')");
 
              // Ferme la connexion à la base de données.
              mysql_close();
 
              // Une fois les données insérées, le navigateur renvoie une page
              // HTML avec les informations suivantes 
              echo "Merci pour avoir ajouté un signet<br>";
              echo "< a href=book.php3>Voir les signets < /a><br>";
              echo "< a href=sendbook.html>En ajouter un Autre < /a><br>";
            }else{
              echo "Vous devez utiliser le formulaire: < a href=sendbook.html>Sendbook < /a>";
            }
         ?>

Il y a un troisième script nommé book.php3. Ce script eefctue une requête sur les données entrées par sendbook.php3 et affiche à l'écran tous vos signets.


  <?       echo "< HTML >";
           echo "<HEAD><TITLE>Afsilva's Bookmark < /title> < /head>";
           echo "<body bgcolor=white>";
           echo "<IMG SRC=bookmark.jpg><br><br>";

                // Connexion au serveur de base de données
                mysql_connect(myserver, myusername, mypasword);
                // Connexion a la base
                mysql_select_db("mydatabase");
                // Exécute une requête sur la base en demandant l'intégralité de son contenu
                $result = mysql_query("SELECT * FROM bookmark");

                // mysql_num_rows() retourne le nombre de signets de la base.
                $rows = mysql_num_rows($result);
                echo "Nombre de signets:";
                // Affiche le nombre de signet (lignes)
                echo $rows;
                echo "<br><br>";
                $i=0;
                echo "<a href=sendbook.html>Insérer un autre signet < /a>\n<br><br>";
                echo "<table border=1>";
                // Cela permet d'accéder au résultat de la requête par un tableau.
                // L'index du tableau est le nom du champ.
                while ($row = mysql_fetch_array($result))
                {
                      echo "<tr><td>\n";
                      // L'opérateur . concatène deux chaînes.
                      echo "<a href=".$row["URL"].">".$row["description"]."< /a>\n";
                      echo "< /td> < /tr>";
                }
                echo"< /table>";
                mysql_close();
                echo"<a href=../index.html target=_top>";
     ?>      
     echo "< /HTML>";
?>

Avec ces trois fichiers vous devriez être capable de faire tourner votre première application de gestion de signets. Ne vous arrêtez pas là cependant! Travaillez dessus et faîtes en sorte que votre livre de signets soit meilleur et mieux présenté. À partir de cet exemple, vous pouvez concevoir beaucoup d'autres types d'utilitaires en ligne: livres d'or, compteurs, enquêtes, etc...

J'espère que cet article vous a été utile et vous a appris quelque chose de nouveau. Envoyez vos questions et vos commentaires à cette adresse Anderson Silva

Copyright 1999, Anderson Silva. Paru dans le numéro 50 de la Linux Gazette de février 2000.

Traduction française de David Le Roy llewellyn@free.fr.


Page suivante Page précédente   Table des matières