<?xml version="1.0" encoding="ISO-8859-1"?>
<newsletters>
   <newsletter numero="1" dateDeb="2000/06/12">
      <articles>
         <article url="http://www.sam-mag.com/archives/dynamique.htm" categorie="Divers">
            <titre>Pages statiques vs dynamiques</titre>
            <keywords>PHP,page dynamiques,bases de données</keywords>

            <texte>
               <![CDATA[Le web ne peut plus utiliser de pages statiques aussi belles soient-elles. Pour au moins trois raisons. La première étant le taux de rafraîchissement de l'information, du contenu ; la seconde, du même ordre de grandeur, est liée à la volumétrie et enfin la troisième est due à la volonté de mettre de l'interactivité entre le site et l'internaute ]]>
            </texte>
         </article>

         <article url="http://www.sam-mag.com/archives/proteger.htm" categorie="Programmation">
            <titre>Comment protéger le contenu de ses pages web ?</titre>
            <keywords>protection,JavaScript</keywords>

            <texte>
               <![CDATA[Que celui qui ne s'est jamais posé la question me jette la première balise. C'est une question récurrente de la part de nombre de webmasters. Et, il faut bien le reconnaître, la question est légitime. En effet, on a tellement pris sur notre sommeil, on a tellement transpiré coca et café, on a tellement passé d'heures devant un micro jamais à la hauteur, pour accoucher de la plus belle page web avec le code le plus performant du monde, qu'il est humain de ne pas accepter de se faire "pirater" le fruit de ses efforts ]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="2" dateDeb="2000/06/26">
      <articles>
         <article url="http://www.sam-mag.com/archives/reutiliser.htm" categorie="Méthode">
            <titre>De la réutilisabilité... ou comment ne pas tout réécrire</titre>
            <keywords>classe,code,réutilisable,PHP,Mysql</keywords>

            <texte>
               <![CDATA[Le développement informatique n'est qu'une longue suite de répétitions avec adaptation aux spécificités du projet. On retrouve régulièrement les mêmes cas de figure, des traitements que l'on a déjà réalisés. Sur le web un cas simple est par exemple la construction d'une liste de sélection à partir des résultats d'une requête]]>
            </texte>
         </article>

         <article url="http://www.sam-mag.com/archives/expressions.htm" categorie="Programmation">
            <titre>Les expressions régulières</titre>
            <keywords>regexp,expressions régulières,contrôle des données,javascript</keywords>

            <texte>
               <![CDATA[Dans le précédent article j'ai abordé les différences entre les parties serveur et client de la programmation des pages web. Dans celui-ci je vais m'attacher à ce qui se passe sur le poste client avant que la page ne revienne sur le serveur]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="4" dateDeb="2000/07/24">
      <articles>
         <article url="http://www.sam-mag.com./archives/sprintf.htm" categorie="Programmation">
            <titre>Utilisation de printf et sprintf ?</titre>
            <keywords>quotes,print,printf</keywords>

            <texte>
               <![CDATA[Comment ne pas avoir de problèmes avec les quotes et double-quotes dans les chaînes que nous formatons. Nous sommes souvent amenés à créer des chaînes de requêtes SQL à proposer au SGBD]]>
            </texte>
         </article>

         <article url="http://www.sam-mag.com./archives/reutiliser2.htm" categorie="Méthode">
            <titre>De la réutilisabilité... les langages objets</titre>
            <keywords>objets,langages objets,classes,SGBD,SGBDR</keywords>

            <texte>
               <![CDATA[Il y a beaucoup de façons de ne pas réécrire le code, nous l'avons vu dans le premier article sur ce thème. Cela va du " copier/coller " aux " include ". Il en est une autre qui n'est pas possible avec tous les langages de programmation. C'est l'utilisation d'objets.]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="5" dateDeb="2000/08/07">
      <articles>
         <article url="http://www.sam-mag.com./archives/devel-integre.htm" categorie="Programmation">
            <titre>Les outils de développement intégré (AGL-CASE)</titre>
            <keywords>AGL,éditeur,HTML</keywords>

            <texte>
               <![CDATA[Je lisais récemment sur un newsgroup de développement, que le plaisir dans la programmation venait de s'arracher les cheveux pendant des heures sur des problèmes, plutôt que d'utiliser des ateliers de développement]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="6" dateDeb="2000/08/21">
      <articles>
         <article url="http://www.sam-mag.com./archives/langagesobjets.htm" categorie="Programmation">
            <titre>Utilisation de classes pour pallier des lacunes du SGBDR ... Les langages objets</titre>
            <keywords>objets,langages objets,classes,SGBD,SGBDR</keywords>

            <texte>
               <![CDATA[Les SGBDR doivent gérer les relations, c'est le 'R' de leur nom ! C'est à dire que les valeurs de certaines colonnes de tables doivent exister dans une colonne d'une autre table. Oracle comme Access le font.. Mais un SGBD très utilisé sur le net comme MySql ne le fait pas, les concepteurs s'en expliquent]]>
            </texte>
         </article>

         <article url="http://www.sam-mag.com./archives/protegercode.htm" categorie="Méthode">
            <titre>Protéger le code Javascript</titre>
            <keywords>protection,javascript</keywords>

            <texte>
               <![CDATA[C´est une question vieille comme le net, espace de liberté et volonté de camoufler. Raccourci un peu trop fort, sûrement]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="7" dateDeb="2000/09/04">
      <articles>
         <article url="http://www.sam-mag.com./archives/formulaire.htm" categorie="Programmation">
            <titre>Que faire des données d'un formulaire (1ème partie)</titre>
            <keywords>formulaire,récupération,interactivité</keywords>

            <texte>
               <![CDATA[Les formulaires ont été les premiers éléments d'interactivité de HTML. Anciennes, certes, les balises <form> mais d'une actualité toujours très forte. On les utilise pour obtenir des informations volontaires de la part de l'internaute : abonnement, vente en ligne.., je ne vais pas en faire l'énumération. Mais il faut traiter les données de ce formulaire quand l'utilisateur nous l'a transmis]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="8" dateDeb="2000/09/18">
      <articles>
         <article url="http://www.sam-mag.com./archives/liste-de-selection.htm" categorie="Programmation">
            <titre>Comment construire une liste de sélection à partir d'une base de données</titre>
            <keywords>base de données,select,sélection</keywords>

            <texte>
               <![CDATA[Bien souvent les valeurs d'une liste de sélection, d'une famille de radio-boutons ou de cases à cocher sont des valeurs fixes de l'application. Il est aisée de les stocker dans une base de données car c'est plus souple à gérer. Nous allons voir comment construire cette liste de sélection directement à partir de la base]]>
            </texte>
         </article>

         <article url="http://www.sam-mag.com./archives/formulaire2.htm" categorie="Méthode">
            <titre>Que faire des données d'un formulaire (2ème partie)</titre>
            <keywords>base de données,select,sélection</keywords>

            <texte>
               <![CDATA[Nous avons vu ensemble la dernière fois comment réceptionner les informations d'un formulaire par messagerie. Dans cet épisode nous allons gérer ces données sur le serveur avec PHP et la fois prochaine nous le verrons avec ASP. Chacun, son tour]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="9" dateDeb="2000/10/02">
      <articles>
         <article url="http://www.sam-mag.com./archives/formulaire3.htm" categorie="Programmation">
            <titre>Que faire des données d'un formulaire (3ème partie) - Liste déroulante en ASP/Access</titre>
            <keywords>base de données,select,sélection</keywords>

            <texte>
               <![CDATA[L'ASP s'impatientait dans son coin..à son tour de nous construire la liste déroulante. Je reviendrai plus tard sur les radio-boutons. Dans la balise forme nous indiquons toujours l'URL qui va réceptionner les données, l'extension doit être .asp: <form action="monScript.asp" methode=post> De façon identique, tous les contrôles ayant un nom sont transmis : les zones de saisie, les cases à cocher, les radio-boutons, les boutons 'submit, les champs cachés]]>
            </texte>
         </article>

         <article url="http://www.sam-mag.com./archives/php-access.htm" categorie="Méthode">
            <titre>Comment construire une liste de sélection à partir d'une base de données : PHP &amp; Access</titre>
            <keywords>PHP,Access,ODBC</keywords>

            <texte>
               <![CDATA[Comment construire une liste de sélection à partir d'une base de données : PHP & Access]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="10" dateDeb="2000/10/16">
      <articles>
         <article url="http://www.sam-mag.com./archives/cookies2.htm" categorie="Programmation">
            <titre>Comment gérer les cookies en JavaScript</titre>
            <keywords>cookies,javascript</keywords>

            <texte>
               <![CDATA[Les cookies, des petits fichiers textes tout simples, mais qui rendent de grands services à condition de savoir les manipuler, les créer et surtout les récupérer]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="11" dateDeb="2000/10/30">
      <articles>
         <article url="http://www.sam-mag.com./archives/formulaire-email.htm" categorie="Programmation">
            <titre>Envoyer le contenu d'un formulaire par e-mail</titre>
            <keywords>formulaire,e-mail,email</keywords>

            <auteur>D'après 
            <lien email="julie@thickbook.com">J. Meloni</lien>
            </auteur>

            <commentaire>Cet article est une adaptation/traduction de « 
            <lien hlien="http://www.thickbook.com/extra/php_email.phtml">Sending Form Data in E-Mail</lien>

            », avec l'aimable autorisation de son auteur.</commentaire>

            <texte>
               <![CDATA[Envoyer le contenu d'un formulaire à une adresse donnée par e-mail est une chose extrêmement simple. La fonction mail() de PHP prend quatre arguments: le destinataire, le sujet, le message et des headers additionnels. Dans ce tutorial, vous allez apprendre à valoriser chacun de ces paramètres, à expédier le mail ainsi constituer et à afficher une page de confirmation. Nous allons utiliser un processus en deux étapes, une page pour le formulaire et une autre avec le code PHP qui traitera les données du formulaire et retournera la réponse]]>
            </texte>
         </article>

         <article url="http://www.sam-mag.com./archives/jointures-sql.htm" categorie="Méthode">
            <titre>Utilisation des jointures dans les requêtes SQL</titre>
            <keywords>jointures,SQL,requêtes</keywords>

            <texte>
               <![CDATA[La jointure est une opération permettant de combiner des informations venant de plusieurs tables. On peut joindre jusqu'à 256 tables, mais le nombre de tables utilisées dans les jointures est souvent largement inférieur à 256 ! Dès que l'on spécifie plusieurs tables dans la clause FROM de la requête, on effectue une jointure. SQL ne sait pas tout seul comment faire cette jointure, nous devons donc bien le lui spécifier. D'ailleurs si on ne précise pas de condition de sélection, le résultat obtenu sera le produit cartésien des tables indiquées. Cette condiion de sélection s'effectue naturellement dans la clause WHERE]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="12" dateDeb="2000/11/13">
      <articles>
         <article url="http://www.sam-mag.com/archives/jointures-sql2.htm" categorie="SQL">
            <titre>Utilisation des jointures dans les requêtes SQL - 2ème partie</titre>
            <keywords>jointures,SQL,requêtes</keywords>

            <texte>
               <![CDATA[Pour faire le lien avec les articles de Stéphane Lambert, une jointure est l'action qui permet de retrouver les redondances que l'on a écartées dans la modèlisation et la conception de la base. Quand on fait deux tables l'une pour les clients et l'autre pour ses factures, c'est afin de ne pas stocker les informations fixes du client sur chaque ligne de facture. Mais à l'édition, au sens large (papier, écran..), on a besoin de présenter toutes les factures d'un client. On effectue donc une jointure sur l'identifiant du client qui lui est présent dans les deux tables]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="14" dateDeb="2000/12/11">
      <articles>
         <article url="http://www.sam-mag.com/archives/regles.htm" categorie="Méthode">
            <titre>Se donner des règles de programmation</titre>
            <keywords>programmation,règles,standards,normes</keywords>

            <texte>
               <![CDATA[Dans tous les systèmes informatiques, il faut se fixer des normes, des règles de développement. Encore plus dans les scripts embarqués dans le HTML Il en est des programmes comme des romans, ils ont un style. Les développeurs tiennent à cet espace de liberté. Celui-ci à des limites, les nôtres d'abord et celles de celui qui passera après nous. Il faut effectivement avoir un style de programmation car cela nous donne des repères dans le suivi de notre développement. Nous nous y retrouvons rapidement car nous connaissons notre façon d'écrire. Si ce style est cohérent d'un script à un autre, cela aidera celui qui aura à intervenir dans nos pages, car il comprendra vite la façon d'écrire et traduira facilement notre pensée, et si en plus il ya de la documentation. Ces principes sont vieux, enfin vieux comme l'informatique ou presque, donc beaucoup plus âgés que l'internet.]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="15" dateDeb="2000/12/25">
      <articles>
         <article url="http://www.sam-mag.com/archives/regles2.htm" categorie="Méthode">
            <titre>Se donner des règles de programmation - 2ème partie</titre>
            <keywords>programmation,règles,standards,normes</keywords>

            <texte>
               <![CDATA[Que l'on soit bien d'accord, ce sont des règles que je me fixe, je sais que je ne les applique pas à 100% :-))) ; je le paie toujours, mais il est trop tard. On a (j'ai) toujours de bonnes raisons pour faire l'impasse sur certaines d'entre elles, la plus fréquemment invoquée est sans doute le temps, les délais sont parfois brefs.Mais, quand il faut revenir dessus on paie les hypothèques. A la longue, certaines d'entre elles deviennent naturelles et nous n'avons pas nos repères quand elles n'ont pas été appliquées]]>
            </texte>
         </article>

         <article url="http://www.sam-mag.com/archives/controle_acces.htm" categorie="Programmation">
            <titre>Contrôler l'accès de pages d'un site web (I)</titre>
            <keywords>contrôle,protection,HTTP,MySql,.htaccess</keywords>

            <auteur>d'après 
            <lien email="julie@thickbook.com">J. Meloni</lien>
            </auteur>

            <commentaire>Cet article est une adaptation/traduction de « 
            <lien hlien="http://www.zend.com/zend/tut/authentication.php">PHP-Based User Authentication</lien>

            , » avec l'aimable autorisation de son auteur.</commentaire>

            <texte>
               <![CDATA[Nous allons poursuivre notre étude de contrôle d'authentification d'utilisateurs. Nous allons sophistiquer notre système en contrôlant les codes à partir d'un fichier texte puis d'un fichier .htpasswd. Nous avons afficher un message de succés lors d'une authentification correcte, nous allons maintenant afficher une page HTML puis rediriger l'utilisateur vers la page tant attendues]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="16" dateDeb="2001/01/08">
      <articles>
         <article url="http://www.sam-mag.com/archives/controle_acces2.htm" categorie="Programmation">
            <titre>Protéger l'accès des pages d'un site web (II)</titre>
            <keywords>contrôle,protection,HTTP,MySql,.htaccess</keywords>

            <auteur>d'après 
            <lien email="julie@thickbook.com">J. Meloni</lien>
            </auteur>

            <commentaire>Cet article est une adaptation/traduction de « 
            <lien hlien="http://www.zend.com/zend/tut/authentication.php">PHP-Based User Authentication</lien>

            », avec l'aimable autorisation de son auteur.</commentaire>

            <texte>
               <![CDATA[Nous allons poursuivre notre étude de contrôle d'authentification d'utilisateurs. Nous allons sophistiquer notre système en contrôlant les codes à partir d'un fichier texte puis d'un fichier .htpasswd. Nous avons afficher un message de succés lors d'une authentification correcte, nous allons maintenant afficher une page HTML puis rediriger l'utilisateur vers la page tant attendues]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="17" dateDeb="2001/01/22">
      <articles>
         <article url="http://www.sam-mag.com/archives/controle_acces3.htm" categorie="Programmation">
            <titre>Protéger l'accès des pages d'un site web (III)</titre>
            <keywords>contrôle,protection,HTTP,MySql,.htaccess</keywords>

            <auteur>d'après 
            <lien email="julie@thickbook.com">J. Meloni</lien>
            </auteur>

            <commentaire>Cet article est une adaptation/traduction de « 
            <lien hlien="http://www.zend.com/zend/tut/authentication.php">PHP-Based User Authentication</lien>

            », avec l'aimable autorisation de son auteur.</commentaire>

            <texte>
               <![CDATA[Pour terminer nous allons confronter la saisie de l'internaute à la liste des utilisateurs stockée dans une base de données. Ce qui est le cas le plus fréquent dès qu'il s'agit de gérer une liste qui peut devenir conséquente, la gestion par formulaire en est facilitée]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="18" dateDeb="2001/02/05">
      <articles>
         <article url="http://www.sam-mag.com/archives/methode.htm" categorie="Programmation">
            <titre>Discours sur les méthodes</titre>
            <keywords>méthode,conception,organisation</keywords>

            <texte>
               <![CDATA[Non, n'ayez pas peur je ne vais pas plagier Descartes. Je souhaite simplement poursuivre le débat suite aux articles sur Merise diffusés dans cette lettre d'informations, articles écrits par Stéphane Lambert. Il faut comparer ce qui est comparable et ne pas perdre de vue nos objectifs]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="19" dateDeb="2001/03/05">
      <articles>
         <article url="http://www.sam-mag.com/archives/bien-ecrire.htm" categorie="programmation">
            <titre>Bien organiser pour mieux développer</titre>
            <keywords>composants,architecture,organisation,référentiel</keywords>

            <texte>
               <![CDATA[Dans le développement d'applications "lourdes", c'est à dire le fabrication d'exécutable, on est très sensible à l'architecture des composants. Avec les langages de scripts, la souplesse d'écriture peut nous faire oublier certaines règles qui peuvent grandement nous faciliter la vie]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="20" dateDeb="2001/03/19">
      <articles>
         <article url="http://www.sam-mag.com/archives/echange_de_fichiers.htm" categorie="BD">
            <titre>Les migrations de bases de données</titre>
            <keywords>bases de données, échanges de données, migration,PHp,Access,File Maker</keywords>

            <texte>
               <![CDATA[Il est très fréquent de devoir mettre en ligne une base de données. Dans certains cas les données sont antérieures à la création du site web. Il nous faut donc leur imposer une migration et ce quelque soit la saison. Je vais donc brosser la problèmatique de ces transferts d'informations d'un SGBD à un autre]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="22" dateDeb="2001/04/02">
      <articles>
         <article url="http://www.sam-mag.com/archives/xml.htm" categorie="XML">
            <titre>Dans la famille ML je demande le X</titre>
            <keywords>XML</keywords>

            <texte>
               <![CDATA[On parle de plus en plus par sigles et acronymes, certains se retiennent mieux que d'autres, est-ce parce qu'ils sont plus faciles à prononcer ou parce que l'on sent qu'ils sont réellement porteurs d'avenir ? C'est les cas de XML, acronyme de «eXtensible Markup Language» qui lui réunit les deux. La similitude de cette expression avec HTML aussi le rend bougrement apétissant. Je vais prendre la présentation de XML à rebrousse-poil en partant d'un exemple concret.]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="23" dateDeb="2001/04/30">
      <articles>
         <article url="http://www.sam-mag.com/archives/xhtml3.htm" categorie="XML">
            <titre>Structurer correctement un document XML</titre>
            <keywords>XML,structure</keywords>

            <texte>
               <![CDATA[Après avoir survolé les grands principes de XML, nous allons mettre du vocabulaire en place. Ce format de document est prévu pour des échanges entre applications, afin de s'affranchir des formats propriétaires autant que faire se peut. Pour cela le lecteur doit pouvoir lire le document XML reçu, celui-ci doit donc respecter des conventions. Nous allons étudier ces règles, nous pourrons écrire à la fin un document XML bien formé.]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="24" dateDeb="2001/05/14">
      <articles>
         <article url="http://www.sam-mag.com/archives/xml2.htm" categorie="XML">
            <titre>Comment restituer l'information d'un document XML</titre>
            <keywords>XML,XSL,transformation,XSLT</keywords>
            <texte>
               <![CDATA[Nous avons étudié la structuration des documents XML. Ce sont des fichiers presque auto-descriptifs, nous reviendrons sur ce point plus tard. Je voudrais que l'on voit quelque chose de concret avant de théoriser un peu plus. C'est bien joli de stocker de l'information, encore faut-il qu'elle serve à quelque chose, il faut donc être capable de la restituer et le moins que l'on puisse dire, c'est qu'un fichier XML n'est pas abordable en lecture humaine. Ce sera le rôle de XSLT]]>
            </texte>
         </article>
      </articles>
   </newsletter>

   <newsletter numero="25" dateDeb="2001/07/02">
      <articles>
         <article url="http://www.sam-mag.com/archives/intro-xsl-2.htm" categorie="XML">
            <titre>Un moteur XSL sur le web</titre>
            <keywords>XML,XSL,transformation,XSLT</keywords>
            <commentaire>Cet article est référencé par Gingerall.cz - le site de sablotron « 
            	<lien hlien="http://www.gingerall.com/charlie/ga/xml/x_sabphp.xml">Ginger Alliance : Sablotron + PHP</lien>
			.</commentaire>
            <texte>
               <![CDATA[Nous avons un fichier XML, nous avons une feuille de style XSLT, comment appliquer l'un sur l'autre ? Comment exploiter cela sur le web ? C'est maintenant qu'intervient un moteur XSLT, il en existe plusieurs, sur presque toutes les plate-formes. Je vais expliciter la mise en oeuvre d'un moteur XSLT, d'abord en détaillant la mise en place sur un poste de travail "isolé", puis en étudiant la configuration nécessaire sur un serveur internet]]>
            </texte>
         </article>
      </articles>
   </newsletter>
   
   <newsletter numero="26" dateDeb="2001/09/10">
      <articles>
         <article url="http://www.sam-mag.com/archives/apport-uml.htm" categorie="UML">
            <titre>Les apports d'UML sur l'enchaînement des pages Web</titre>
            <keywords>programmation,UML,conception</keywords>
            <texte>
               <![CDATA[Afin de parfaitement gérer l'enchainement de pages web, lors par exemple de la saisie de formulaires multiples, il est nécessaire de mettre à plat les circuits potentiels que peut prendre l'internaute. Les diagrammes d'états-transitions d'UML nous offrent un support de documentation qui se prête largement à ce besoin. Les trois parties d'un script serveur Si l'on décortique quelques pages actives, on se rend vite compte qu'il y a toujours 3 parties importantes dans les scripts]]>
            </texte>
         </article>

         <article url="http://www.sam-mag.com/archives/self-jointure.htm" categorie="SQL">
            <titre>Jointure d'une table sur elle-même</titre>
            <keywords>sql,jointure</keywords>
            <texte>
               <![CDATA[Il est des cas où l'on doit analyser une table par rapport à elle-même. Par exemple, étudier les relations hiérarchiques dans une table d'employés. Je vais étudier un autre cas, dénombrer les chemins à trois pages d'un même internaute dans un site. Cet article trouve son origine dans une réponse que j'ai faite sur un forum de discussion]]>
            </texte>
         </article>
      </articles>
   </newsletter>
   
   <newsletter numero="27" dateDeb="2001/11/05">
      <articles>
         <article url="http://www.sam-mag.com/archives/graphiquesSousPhp.htm" categorie="PHP">
            <titre>Génération de graphiques avec PHP</titre>
            <keywords>programmation,PHP,graphique,GD</keywords>
            <texte>
               <![CDATA[L'internet est un outil de communication, et nous savons bien tous que si le message est important, l'enveloppe, son emballage l'est presque autant. Quand nous devons communiquer sur des séries de chiffres nous pensons tout de suite à des graphiques générés par notre tableur préféré et nous avons chacun le nôtre. Afin de garantir la compatibilité avec toutes les plate-formes et tous les navigateurs de la page contenant notre graphique, nous devons utiliser ou une applet ou une image. Nous allons survoler dans cet article, la génération à la volée d'image par PHP]]>
            </texte>
         </article>

         <article url="http://www.sam-mag.com/archives/requeteDeRegroupement.htm" categorie="SQL">
            <titre>SQL : requêtes de regroupement</titre>
            <keywords>sql,requête</keywords>
            <texte>
               <![CDATA[Si SQL est un langage de requêtes, d'interrogation de tables relationnelles ce n'est pas uniquement pour restituer l'information ligne à ligne. Nous allons étudier les requêtes de regroupement qui permettent de faire une analyse statistique de la base de données par exemple]]>
            </texte>
         </article>
      </articles>
   </newsletter> </newsletters>

