Valid XHTML     Valid CSS2    

Listing du fichier sen_tds.php avec syntaxhighlighter


        <?php
        include("../std.php") ;
        #    (gH)   -_-  sen_tds.php  ;  TimeStamp (unix) : 28 Septembre 2010 vers 14:40
        debutPage("L3SEN TD ENONCES","strict") ;
        debutSection() ;
        h1("ENONCES DES TDS INFORMATIQUE WEB") ;
        h1("pour la licence DSCS") ;
        h1("(Diffusion du savoir et Culture scientifique)") ;
        
        p("grouge droite") ;
        echo "gilles.hunault@univ-angers.fr" ;
        finp() ;
        
        #########################################################
        
        function tdDscs($num,$nom="") {
          h2("TD <a name='td$num'>DSCS</a> numéro $num ".ancre("sen_tds_cor.php#td$num","(corrigé)").$nom) ;
        } # fin de fonction tdDscs
        
        #########################################################
        #########################################################
        
        $nomTd = array() ;
        $nomTd[1] = " Langage XHTML et CSS" ;
        $nomTd[2] = " CSS, formulaires, Javascript " ;
        $nomTd[3] = " Javascript " ;
        $nomTd[4] = " Php" ;
        $nomTd[5] = " Php et Mysql " ;
        $nomTd[6] = " Tout à la fois " ;
        
        h2("<a name='tdm'>Table des matières</a>") ;
        $nb_td = 6 ;
        blockquote() ;
         for ($itd=1;$itd<=$nb_td;$itd++) {
             echo h3(ancre("#td$itd","TD numéro $itd").$nomTd[$itd]) ;
         } ; # fin pour
        finblockquote() ;
        
        $jtd = 0 ;
        
        #########################################################
        
        $jtd++ ; tdDscs($jtd,$nomTd[$jtd]) ; # TD1
        
        #########################################################
        
        ol() ;
        
        debutli() ;
        p("texte") ;
        echo "Que signifie HTML&nbsp;? Où sont les marqueurs dans une page web&nbsp;? " ;
        echo "Comment peut-on écrire les marqueurs &lt; et &gt;&nbsp;? " ;
        echo "Y a-t-il d'autres systèmes de marqueurs&nbsp;? " ;
        echo "" ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo "Trouver 5 façons d'afficher en XHTML le texte ".b("Bonjour.")." sur une ligne puis le texte " ;
        echo b("Bonsoir.")." sur la ligne d'après." ;
        echo " On pourra par exemple utiliser des paragraphes différents, un seul paragraphe et des retours à la ligne," ;
        echo " des divisions, un tableau..." ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo "Quelle est la différence entre marqueur, élément, balise, entité et attribut&nbsp;? " ;
        echo " Quelle est la structure hiérarchique d'une page web&nbsp;? " ;
        echo " Est-il important de bien structurer une page&nbsp;? " ;
        echo " Est-il obligatoire de bien structurer une page&nbsp;? " ;
        echo " Est-il important d'écrire des pages valides&nbsp;? " ;
        echo " Est-il obligatoire d'écrire des pages valides&nbsp;? " ;
        echo " Est-ce la m&ecirc;me chose de fermer une balise et un élément&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo "De quelles grammaires dispose-t-on pour bien écrire les pages Web&nbsp;? " ;
        echo " Quelles en sont les règles&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo "Donner le code-source d'une adresse comme " ;
        finp() ;
        pre() ;
        nbsp(5) ; echo "Jean DUPONT\n" ;
        nbsp(5) ; echo "3 route de Rome\n" ;
        nbsp(5) ; echo "49100 ANGERS\n" ;
        finpre() ;
        p("texte") ;
        echo " On utilisera comme structure un seul paragraphe et des retours à la ligne après avoir justifié cette structure." ;
        echo " Détailler les différences transitionnel/strict " ;
        echo " sachant qu'on veut mettre le nom de la ville en gras, le nom et le prénom en bleu, tout le texte en grands caractères. " ;
        echo " Peut-on vraiment imprimer à l'italienne (en paysage)&nbsp;? " ;
        echo " On donnera des solutions valides XHTML et CSS pour les grammaires strictes et transitionnelles." ;
        finp() ;
        
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Ecrire le texte XHTML valide au sens transitionnel qui correspond aux indications suivantes." ;
        echo " L'élement X1 a pour attribut X2 (de valeur X3) et X4 (de valeur X5). Il contient dans cet ordre " ;
        echo " le texte X6 puis l'élément autofermant X7 et en fin le texte X8 écrit en gras. " ;
        echo " Remplacer X1 par p, X2 par id, X3 par mfp, X4 par class, X5 par texte, X6 par Bonjour, " ;
        echo " X7 par hr, X8 par tout le monde. Qu'obtient-ton&nbsp;?" ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo "Comment afficher un \"beau\" calendrier des saisons pour des petites classes&nbsp;?" ;
        echo " On donnera une solution en tableau et une solution en liste de définitions." ;
        echo " Comment avoir tout le calendrier en bleu&nbsp;? " ;
        echo " Comment mettre un quadrillage&nbsp;? " ;
        finp() ;
        p("texte") ;
        echo " <em>Rappel</em> : une saison a un nom, une date de début et une date de fin." ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo "Je veux écrire un paragraphe justifié à droite et à gauche. Quelles sont les possibilités en XHTML / CSS&nbsp;? " ;
        echo " Quels sont toutes les propriétés d'un paragraphe&nbsp;? Comment les modifier&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Quelle est la syntaxe exacte à utiliser pour définir un style, à la volée, en local, en externe&nbsp;? Si on utilise toujours une propriété et une " ;
        echo " valeur, pourquoi doit-on mettre un point-virgule entre les propriétés&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Peut-on mettre plusieurs attributs pour un m&ecirc;me élément&nbsp;? Et plusieurs propriétés&nbsp;? " ;
        echo " Avec les m&ecirc;mes noms&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Dans CSS, le C signifie cascade. Qu'est-ce que cela veut dire&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Détailler ce que fait le navigateur au vu de la balise suivante. On distinguera les grammaires strictes et transitionnelles. " ;
        finp() ;
        
        pre("cadre") ;
        ?>
        
           &lt;p id="dates" name="dates" style="font-size : 5 ; color : blue" class="mamf1 mamf2"...
        
        <?php
        finpre() ;
        
        finli() ;
        
        debutli() ;
        echo " Si on n'a pas le droit de mettre des accents dans les liens, comment fait-on, par exemple pour " ;
        echo " l'adresse <b>http://www.google.fr/search?q=légumes</b>&nbsp;? " ;
        finli() ;
        
        finol() ;
        
        #########################################################
        
        $jtd++ ; tdDscs($jtd,$nomTd[$jtd]) ; # TD2
        
        #########################################################
        
        ol() ;
        
        debutli() ;
        p("texte") ;
        echo " On me demande d'écrire l'élément <b>x<sub>1</sub></b> qui contient les éléments <b>x<sub>2</sub></b>, <b>x<sub>3</sub></b>... " ;
        echo " avec comme noms de style respectifs <b>s<sub>1</sub></b>, <b>s<sub>2</sub></b>, <b>s<sub>3</sub></b>... Quel fragment XHTML valide dois-je écrire&nbsp;? " ;
        echo " Y a-t-il une indentation particulière à respecter au niveau du code-source&nbsp;? Pourquoi&nbsp;? " ;
        echo " Application : <b>x<sub>1</sub></b> est <b>ul</b> et les autres <b>x<sub>i</sub></b> sont des <b>li</b>. " ;
        echo " Au passage, comment écrit-on des indices et des puissances (et des puissances de puissances) comme dans : " ;
        finp() ;
        
        p("center") ;
        echo "<span class='gros_car_20pt'>" ;
        echo "<b>x<sub>i</sub><sup>(n<sup>2</sup>)</sup></b> se prononce <em>x indice i puissance n deux</em> " ;
        echo " (comme <b>x<sup>n<sup>2</sup></sup><sub>i</sub></b>&nbsp;?)" ;
        echo "</span>" ;
        finp() ;
        
        echo " <a name='fin'>&nbsp;</a> " ;
        
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Je veux réaliser un joli quadrillage avec une bordure épaisse bleu foncée tout autour du tableau et " ;
        echo " des lignes fines en bleu clair (en pointillé&nbsp;?) à l'intérieur du tableau, " ;
        echo " comme dans l'exemple suivant où tout le texte est centré et où le texte ne 'colle' pas aux bords : " ;
        finp() ;
        
        echo "<div class='centre respire taille_5'>\n" ;
        echo "<table class='espace' summary='exemple 1'>\n" ;
        
        tr() ;
        td() ;
        echo "<table class='gbbec' cellpadding='10' summary='exemple 2'>\n" ;
        echo "<tr>\n" ;
        echo "  <td class='bbcf'>Angers </td>\n" ;
        echo "  <td class='bbcf'>Nantes </td>\n" ;
        echo "  <td class='bbcf'>Tours</td>\n" ;
        echo "  <td class='bbcf'>Lyon</td>\n" ;
        echo "</tr>\n" ;
        echo "<tr>\n" ;
        echo "  <td class='bbcf'>Oui</td>\n" ;
        echo "  <td class='bbcf'>Non</td>\n" ;
        echo "  <td class='bbcf'>Oui</td>\n" ;
        echo "  <td class='bbcf'>Oui</td>\n" ;
        echo "</tr>\n" ;
        echo "<tr>\n" ;
        echo "  <td class='bbcf'>Standard</td>\n" ;
        echo "  <td class='bbcf'>Standard</td>\n" ;
        echo "  <td class='bbcf'>Spécial</td>\n" ;
        echo "  <td class='bbcf'>Spécial</td>\n" ;
        echo "</tr>\n" ;
        echo "<tr>\n" ;
        echo "  <td class='bbcf'>Janvier</td>\n" ;
        echo "  <td class='bbcf'>Février</td>\n" ;
        echo "  <td class='bbcf'>Mars</td>\n" ;
        echo "  <td class='bbcf'>Avril</td>\n" ;
        echo "</tr>\n" ;
        echo "</table>\n" ;
        fintd() ;
        
        td() ; nbsp() ; fintd() ;
        td() ; nbsp() ; fintd() ;
        td() ; nbsp() ; fintd() ;
        
        td() ;
        echo "<table class='respire gbbec'  cellpadding='10' summary='exemple 3'>\n" ;
        echo "<tr>\n" ;
        echo "  <td class='bbcfp'>Angers </td>\n" ;
        echo "  <td class='bbcfp'>Nantes </td>\n" ;
        echo "  <td class='bbcfp'>Tours</td>\n" ;
        echo "  <td class='bbcfp'>Lyon</td>\n" ;
        echo "</tr>\n" ;
        echo "<tr>\n" ;
        echo "  <td class='bbcfp'>Oui</td>\n" ;
        echo "  <td class='bbcfp'>Non</td>\n" ;
        echo "  <td class='bbcfp'>Oui</td>\n" ;
        echo "  <td class='bbcfp'>Oui</td>\n" ;
        echo "</tr>\n" ;
        echo "<tr>\n" ;
        echo "  <td class='bbcfp'>Standard</td>\n" ;
        echo "  <td class='bbcfp'>Standard</td>\n" ;
        echo "  <td class='bbcfp'>Spécial</td>\n" ;
        echo "  <td class='bbcfp'>Spécial</td>\n" ;
        echo "</tr>\n" ;
        echo "<tr>\n" ;
        echo "  <td class='bbcfp'>Janvier</td>\n" ;
        echo "  <td class='bbcfp'>Février</td>\n" ;
        echo "  <td class='bbcfp'>Mars</td>\n" ;
        echo "  <td class='bbcfp'>Avril</td>\n" ;
        echo "</tr>\n" ;
        echo "</table>\n" ;
        fintd() ;
        fintr() ;
        
        echo "</table>\n" ;
        echo "</div>\n" ;
        
        p("texte") ;
        echo " Combien de styles différents me faut-il&nbsp;? Et où les mettre&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Lorsque je lis le texte d'un formulaire, je trouve ceci écrit : " ;
        echo " <b>&lt;form&gt;&lt;input type='text' value='5' /&gt;&lt;/form&gt;</b>." ;
        echo " Y a-t-il une valeur par défaut pour le texte à saisir&nbsp;? " ;
        echo " Est-ce correct : au sens de <em>xhtml transitionnel</em> (tout le reste étant valide)&nbsp;? et intellectuellement&nbsp;?" ;
        echo " Que manque-t-il (si on omet la mise en forme) pour avoir un \"vrai\" formulaire&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Je voudrais écrire un formulaire en <b>mode GET</b> qui demande un prénom et qui rajoute automatiquement comme " ;
        echo " paramètre à l'URL de l'action le mot <b>section</b> et la valeur '<b>grande</b>'. Comment faire&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Un formulaire (en <b>mode GET</b>) contient une entrée texte nommée <b>JOUR</b>, une liste de sélection nommée <b>DR</b> " ;
        echo " contenant : " ;
        echo " <b>&lt;option value='1'&gt;Mancini&lt;/option&gt;&lt;option value='2'&gt;Poudlard&lt;/option&gt;...</b>." ;
        echo " Le formulaire a aussi des boutons radios tous nommés <b>HR</b> donc voici le début du code-source : " ;
        echo " <b>&lt;input type='radio' name='HR' value='A' /&gt;9 h  " ;
        echo " &lt;input type='radio' name='HR' value='B' /&gt;14 h...</b>" ;
        echo " Sachant que l'URL de l'action (fictive) du formulaire est <b>http://pdrv.fr/parm</b>, si l'utilisateur entre " ;
        echo " <b>lun</b> pour le jour, qu'il valide l'option <b>Poudlard</b> et qu'il rend actif le bouton radio correspondant à <b>9 h</b>," ;
        echo " quelle serait l'URL renvoyée par le navigateur&nbsp;? " ;
        echo " Et si l'utilisateur écrit <b>x=2</b> comme jour&nbsp;? " ;
        echo " Et si le bouton d'envoi (<b>submit</b>) est nommé go et qu'il affiche 'envoi'&nbsp;? " ;
        finp() ;
        
        p("texte") ;
        echo "<em>Pour les experts :</em> dans quel ordre les noms de champs d'entrée sont-ils transmis&nbsp;? " ;
        echo "Le champ de nom <b>pomme</b> (tout en minuscules) est-il différent du  champ de nom <b>POMME</b> (tout en majuscules)&nbsp;?" ;
        echo " Peut-on avoir un attribut <b>value</b> dans un élément <b>input</b> sans avoir d'attribut <b>name</b>&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Lorsqu'un formulaire transmet un <b>input type='text'</b> dont la valeur est <b>5</b>, peut-on savoir s'il s'agit d'un " ;
        echo " nombre ou d'une chaine de caractères&nbsp;? Comment forcer <b>Javascript</b> à l'utiliser comme nombre&nbsp;?" ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Je veux écrire un formulaire qui affiche comme liste de sélection (et dans cet ordre) les mots " ;
        echo " <b>'pipounet'</b> et <b>'pipounette'</b> mais " ;
        echo " que le formulaire transmette respectivement les valeurs <b>G</b> et <b>F</b> pour le champ <b>SEXE</b>. Comment faire&nbsp;? " ;
        echo " Honneur aux dames, comment mettre <b>F</b> comme choix par défaut&nbsp;? et en rose&nbsp;? " ;
        echo " Pourquoi ne faut-il pas nommer le champ <b>SEXE</b>&nbsp;? Peut-on mettre les deux options validées par défaut&nbsp;? " ;
        echo " Quelle est la valeur renvoyée dans ce cas&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " J'ai deux boutons radio dans un formulaire qui affichent <b>Non</b> et <b>Oui</b>. Comment faire pour que le formulaire envoie comme valeurs " ;
        echo " associées  <b>1</b> et <b>2</b> pour le champ '<b>pipouyou</b>'&nbsp;? " ;
        echo " Honneur aux pipouyous, comment mettre <b>Oui</b> choix par défaut&nbsp;? et en bleu clair&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Lorsque je teste mon programme <b>Javascript</b> qui utilise les valeurs issues d'un formulaire, " ;
        echo " il fonctionne bien avec <b>13</b> et <b>19</b> mais pas avec <b>3</b> et <b>21</b>. Pourquoi&nbsp;? On pourra imaginer que le " ;
        echo " programme se base sur l'ordre des valeurs." ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Avant de transmettre la valeur du champ <b>REPONSE</b> du formulaire, je voudrais tester avec Javascript si c'est bien un " ;
        echo " nombre entier positif. Quels évènements (<b>clavier, souris</b>...) puis-je utiliser&nbsp;? Et sur quels éléments du formulaire&nbsp;? " ;
        echo " Lesquels sont les plus simples&nbsp;? " ;
        echo " Pourquoi est-ce 'mauvais' de mettre la validation sur le bouton d'envoi comme dans <b>input type='submit' value='Ok' onclick='valider()'</b>&nbsp;? " ;
        echo " Et sur une image de soumission comme dans <b>img src='...' alt='...' onclick='valider()'</b>&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Que faudrait-il faire en Javascript pour tester qu'une ligne d'entrée contient une suite de nombres entiers séparés " ;
        echo " par un ou plusieurs espaces&nbsp;? Et si la réponse à une question était <b>le ballon rouge</b>&nbsp;? " ;
        echo " Que peut-on en déduire sur la validation de questionnaires par page Web et sur l'évaluation des 'jeunes apprenants'&nbsp;? " ;
        finp() ;
        finli() ;
        
        finol() ;
        
        #########################################################
        
        $jtd++ ; tdDscs($jtd,$nomTd[$jtd]) ; # TD3
        
        #########################################################
        
        ol() ;
        
        debutli() ;
        p("texte") ;
        echo " Que calcule et qu'affiche le texte Javascript suivant (les numéros de ligne ne font pas partie du texte Javascript)&nbsp;?" ;
        finp() ;
        pre("cadre") ;
        ?>
        
             001 |  function f(x) { return x+1 } ;
             002 |  function g(x) { return 2*x } ;
             003 |  a = 2 ;
             004 |  b = 8 ;
             005 |  c = f(a-2) ;
             006 |  if (c&gt;0) {
             007 |     window.document.write(" on Trouve "+g(c))
             008 |  } else {
             009 |     window.document.write(" pas Vu, pas Pris. ")
             010 |  } ; # fin de si
        
        <?php
        finpre() ;
        finli() ;
        
        debutli() ;
        
        p("texte") ;
        echo " Si j'oublie de mettre les guillemets en XHTML comme par exemple dans " ;
        echo " <b>Google, c'est &lt;a href=http://www.google.fr&gt;ici&lt;/a&gt;</b>, " ;
        echo " est-ce grave&nbsp;? Que fait le navigateur&nbsp;? Et si j'oublie un seul des deux guillemets, " ;
        echo " comme dans <b>Google, c'est &lt;a href=\"http://www.google.fr&gt;ici&lt;/a&gt;</b>&nbsp;?" ;
        echo " ou dans <b>Google, c'est &lt;a href=http://www.google.fr\"&gt;ici&lt;/a&gt;</b>&nbsp;?" ;
        finp() ;
        
        p("texte") ;
        echo " Si j'oublie un guillemet en Javascript comme par exemple dans " ;
        echo "<b>window.document.write(\" on trouve +g(c)) </b>" ;
        echo " ou encore dans <b>window.document.write( on trouve \"+g(c)) </b>, " ;
        echo " est-ce grave&nbsp;? Que fait le navigateur&nbsp;? Que faut-il en conclure&nbsp;?" ;
        finp() ;
        
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Dans ma page Web, je n'ai, après l'élément ".b("head").", que " ;
        finp() ;
        
        pre("cadre") ;
        ?>
             &lt;body&gt;
             &lt;h1 onclick="..."&gt;Bonjour&lt;/h1&gt;
             &lt;/body&gt;
             &lt;/html&gt;
        <?php
        finpre() ;
        
        p("texte") ;
        echo " Que faut-il mettre dans le ".b("onclick")." pour obtenir " ;
        finp() ;
        
        pre("cadre") ;
        ?>
             &lt;body&gt;
             &lt;h1 onclick="ajout() ; "&gt;Bonjour&lt;/h1&gt;
             <span class="gbleu">&lt;h1 class="cadre"&gt;Bonsoir&lt;/h1&gt;</span>
             &lt;/body&gt;
             &lt;/html&gt;
        <?php
        finpre() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Donner le texte des instructions Javascript qui permettent d'afficher le texte " ;
        finp() ;
        
        p("texte") ;
        echo "<b>" ;
        echo "<br/> 8 est le double de 4 et donc 4 est la moitié de 8. " ;
        echo "<br/> 100 est le double de 50 et donc 50 est la moitié de 100. " ;
        echo "<br/> 22 est le double de 11 et donc 11 est la moitié de 22. " ;
        echo "<br/> ... " ;
        echo "</b>" ;
        finp() ;
        
        p("texte") ;
        echo " Devant l'ampleur de la répétition de la tache, écrire une fonction <b>d_et_m(x)</b> (pourquoi d_et_m&nbsp;?) qui affiche le bon texte pour x " ;
        echo " (x est 8 pour la première ligne, 100 pour la deuxième, 22 pour la troisième...) " ;
        finp() ;
        
        p("texte") ;
        echo " Afin d'&ecirc;tre encore plus concis(e), on regroupe toutes les valeurs à utiliser dans la variable <b>vau</b> définie par : " ;
        echo " <b>var var = new Array(8,100,22,52,38...) ;</b>. Modifier votre code Javascript en conséquence." ;
        finp() ;
        
        p("texte") ;
        echo " Finalement, on décide d'utiliser le style <b>grouge</b> pour le nombre de départ, ";
        echo " le style <b>gbleu</b> pour son double " ;
        echo " et le style <b>gvert</b> pour sa moitié. " ;
        echo " Modifier la fonction <b>dm(x)</b> en conséquence." ;
        finp() ;
        
        p("texte") ;
        echo " Où doit-on mettre dans la page Web l'appel à ces instructions javacript&nbsp;? A-t-on besoin d'une fonction&nbsp;? " ;
        finp() ;
        
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Utiliser la liste de nombres <b>1 5 8 2 8 3 6 8 2 1 7</b> comme tableau de travail. Ecrire une fonction <b>Javascript</b> " ;
        echo " nommée <b>valMax()</b> qui trouve la valeur maximale dans le tableau (c'est 8). Compléter la fonction pour qu'elle " ;
        echo " trouve aussi le nombre de fois où ce maximum apparait. Affiner en trouvant la première " ;
        echo " occurence, la dernière, et le nombre de fois où le maximum apparait, qu'on fournira en absolu et en relatif " ;
        echo " c'est à dire en pourcentage du nombre d'éléments du tableau. Vérifier ensuite avec la liste de valeurs 1 2 et " ;
        echo " la liste 1 2 3 4 5." ;
        finp() ;
        p("texte") ;
        echo " <em>Pour les experts</em> : écrire une fonction qui trie le tableau, faire le calcul du max et du  " ;
        echo " nombres d'occurences avec une seule boucle." ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Reprendre l'exercice précédent en supposant que le tableau fourni à la fonction <b>valMax()</b> " ;
        echo " est déjà trié par ordre croissant. Est-ce que cela change quelque chose à la vitesse d'exécution du programme&nbsp;? " ;
        finp() ;
        p("texte") ;
        echo " <em>Pour les experts</em> : écrire une fonction qui affiche le tableau avec <b>table, tr, td</b> et à l'aide " ;
        echo " d'une couleur différente pour le max." ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Reprendre l'exercice liste des courses en Javascript avec oeuf, viande et légumes en simplifiant : le tableau n'aura que " ;
        echo " deux colonnes, l'une avec le mot et un lien vers Google, l'autre avec une image en taille fixe et un lien vers l'image en grand." ;
        echo " On mettra le tout dans une fonction nommée echo <b>ldc</b> (pourquoi ldc&nbsp;?)  " ;
        echo " et on supposera que la fonction ldc est appelée à l'intérieur de l'élément <b>body</b>. Cette fonction produira le " ;
        echo " tableau XHTML avec des images pour le fond (la nappe) et les éléments (les serviettes). On utilisera la " ;
        echo " variable définie par <b>var ingr = new Array('oeuf', 'viande','légumes') ;</b>. " ;
        finp() ;
        p("texte") ;
        echo " <em>Pour les experts</em> : mettre des paramètres pour les images, les styles du tableau et des cellules." ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Ecrire en Javascript une fonction h1(x) puis la fonction h(i,x) qui refait la m&ecirc;me chose (c'est à  " ;
        echo " dire afficher <b>&lt;h1&gt; x &lt;/h1&gt;</b>) " ;
        echo " pour <b>i=1</b>. Quel est l'intér&ecirc;t d'une telle fonction&nbsp;? " ;
        finp() ;
        finli() ;
        
        finol() ;
        
        #########################################################
        
        $jtd++ ; tdDscs($jtd,$nomTd[$jtd]) ; # TD4
        
        #########################################################
        
        blockquote() ;
        p() ;
        echo "Le texte de ce TD est plus court que les autres car il y a une partie <em>examen en controle continu</em>" ;
        echo " qui \"occupe\" le TD et qui n'est pas reproduite ici." ;
        finp() ;
        finblockquote() ;
        
        ol() ;
        
        /*
        debutli() ;
        p("texte") ;
        echo " En Javascript, peut-on transmettre dans un formulaire : la valeur d'un champ-texte&nbsp;? tout l'objet champ-texte&nbsp;? " ;
        echo " Tout le formulaire&nbsp;? " ;
        finp() ;
        p("texte") ;
        echo " On dispose de deux champs-texte nommés a et b. Ecrire le corps d'une fonction Javascript qui permute les contenu de a et b et qui les " ;
        echo " remet dans a et b. On supposera qu'il y a identité entre <b>name</b> et <b>id</b>." ;
        finp() ;
        finli() ;
        */
        
        debutli() ;
        p("texte") ;
        echo " Ecrire en Php une fonction h1(x), puis une fonction h2(x) puis la fonction h(i,x) qui refait la m&ecirc;me chose (c'est à dire " ;
        echo " afficher <b>&lt;h<sub>i</sub>&gt; x &lt;/h<sub>i</sub>&gt;</b>). " ;
        echo " Quel est l'intér&ecirc;t d'une telle fonction&nbsp;? " ;
        finp() ;
        
        p("texte") ;
        echo "Sur le m&ecirc;me principe, écrire une fonction b() et une fonction href(). " ;
        finp() ;
        
        p("texte") ;
        echo "Comment prendre en compte les valeurs par défaut obligatoires de XHTML&nbsp;? et les styles CSS&nbsp;? " ;
        finp() ;
        
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo "On veut faire du texte \"Angers Nantes Rennes\" un tableau à trois éléments en PHP. Est-ce facile&nbsp;? " ;
        finp() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Reprendre l'exercice liste des courses en Php avec oeuf, viande et légumes en simplifiant : le tableau n'aura que " ;
        echo " deux colonnes, l'une avec le mot et un lien vers Google, l'autre avec une image en taille fixe et un lien vers l'image en grand." ;
        echo " On mettra le tout dans une fonction nommée echo <b>ldc</b> (pourquoi ldc&nbsp;?)  " ;
        echo " et on supposera que la fonction ldc est appelée à l'intérieur de l'élément <b>body</b>. Cette fonction produira le " ;
        echo " tableau XHTML avec des images pour le fond (la nappe) et les éléments (les serviettes). " ;
        echo " On pourra utiliser au choix la " ;
        echo " variable définie par <b>var ingr = new Array('oeuf', 'viande','légumes') ;</b> " ;
        echo " ou on construira un tableau à partir d'une phrase contenant la liste des ingrédients." ;
        finp() ;
        
        p("texte") ;
        echo " On s'arrangera pour n'avoir aucune balise, que des fonctions PHP \"conceptuelles\"..." ;
        finp() ;
        
        p("texte") ;
        echo " <em>Pour les experts</em> : mettre des paramètres pour les images, les styles du tableau et des cellules." ;
        echo " Comment se gère l'encodage URL des adresses&nbsp;? " ;
        finp() ;
        finli() ;
        
        finol() ;
        
        #########################################################
        
        $jtd++ ; tdDscs($jtd,$nomTd[$jtd]) ; # TD5
        
        #########################################################
        
        ol() ;
        
        debutli() ;
        p("texte") ;
        echo "On dispose d'une table de données au sens MYSQL qui contient deux champs, l'un nommé ".em("evenement")." qui " ;
        echo " correspond à un évènement et l'autre nommé ".em("date")." qui correspond à une date. " ;
        echo " Voici un exemple possible de remplissage de la table " ;
        finp() ;
        
        pre() ;
        ?>
             +---------------------------------------------------+------+
             | evenement                                         | date |
             +---------------------------------------------------+------+
             | Le couronnement de  Charlemagne                   |  800 |
             | La découverte de l'Amérique par Christophe Colomb | 1492 |
             | La bataille de Marignan                           | 1515 |
             | La chute du mur de Berlin                         | 1989 |
             | La mort de Jeanne d'Arc                           | 1431 |
             | La naissance de Louis XVI                         | 1754 |
             | ...                                               | ...  |
             +---------------------------------------------------+------+
        
        
        <?php
        finpre() ;
        p("texte") ;
        echo " Répondez aux questions suivantes à l'aide d'instructions MySqL : " ;
        finp() ;
        
        ul() ;
        li("Combien y a-t-il d'évènements dans la table&nbsp;? ") ;
        li("Combien y a-t-il d'évènements dans la table ayant eu lieu avant 1789&nbsp;? ") ;
        li("Quels évènements dans la table ont eu lieu avant 1789&nbsp;? ") ;
        li("Quelles sont les deux premières dates dans la table&nbsp;? ") ;
        li("Quelles sont les deux premières dates dans la table par ordre historique&nbsp;? ") ;
        finul() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo "On dispose d'une table ".em("sen_elev")." et d'une table ".em("sen_exer") ;
        echo " qui correspondent respectivement à des élèves et à des séries d'exercices. " ;
        finp() ;
        
        p("texte") ;
        echo " La table ".em("sen_elev")." contient un prénom puis un numéro d'exercice, puis une note sur 20. En voici un extrait " ;
        finp() ;
        
        pre() ;
        ?>
        
             +----------+------+------+
             | pren     | nume | note |
             +----------+------+------+
             | Louise   |    1 |   18 |
             | Pierre   |    1 |   12 |
             | Isabelle |    1 |   12 |
             | Damien   |    1 |   14 |
             | Louise   |    2 |   16 |
             | Louise   |    3 |   16 |
             | ...      |  ... |      |
             +----------+------+------+
        
        
        <?php
        finpre() ;
        
        p("texte") ;
        echo " La table ".em("sen_exer")." contient un identifiant d'exercice (numéro), puis la matière et la difficulté de l'exercice " ;
        echo " qui est un entier entre 1 (facile) et 3 (difficile) ; en voici un extrait : " ;
        finp() ;
        
        pre() ;
        ?>
        
             +-------+----------+-------+
             | idexo | mat      | diffi |
             +-------+----------+-------+
             |     1 | Calcul   |     1 |
             |     2 | Calcul   |     3 |
             |     3 | Histoire |     1 |
             |   ... | ...      |   ... |
             +-------+----------+-------+
        
        
        <?php
        finpre() ;
        
        p("texte") ;
        echo " Essayer de répondre en MySql aux questions suivantes : " ;
        finp() ;
        
        ul() ;
        li("Combien d'exercices Louise a-t-elle fait&nbsp;? ") ;
        li("Combien d'élèves ont fait l'exercice 1&nbsp;? ") ;
        li("Quelle est la moyenne de Louise sur l'ensemble des exercices&nbsp;? ") ;
        li("Et sur l'ensemble des exercices de calcul seulement&nbsp;? ") ;
        li("Comment peut-on afficher les noms et les notes pour l'exercice 1 par ordre de mérite&nbsp;? ") ;
        li("Idem pour la moyenne des notes de calcul (toujours par ordre de mérite)&nbsp;? ") ;
        li("Qui a fait des exercices difficiles&nbsp;? ") ;
        li("Comment peut-on assurer un suivi pédagogique pour les faibles en maths&nbsp;? ") ;
        finul() ;
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo "Donner le code PHP qui répond aux deux premières questions pour la table d'histoire ";
        echo "puis donner le code PHP qui répond aux deux premières questions pour les tables ".em("sen_elv") ;
        echo " et ".em("sen_exer")." ; écrire ensuite une fonction \"conceptuelle\" en PHP que l'on nommera " ;
        echo em("combien")." et donner le code PHP qui réalise les m&ecirc;mes 4 requ&ecirc;tes à l'aide de cette fonction. " ;
        finp() ;
        p("texte") ;
        echo " Ecrire ensuite les instructions PHP qui affichent les noms et les notes pour l'exercice de numéro 1 par ordre de mérite. " ;
        finp() ;
        finli() ;
        
        finol() ;
        
        #########################################################
        
        $jtd++ ; tdDscs($jtd,$nomTd[$jtd]) ; # TD6
        
        #########################################################
        
        ol() ;
        
        debutli() ;
        p("texte") ;
        echo "On suppose qu'on dispose de la table de données suivante nommée ".em("sen_exer")." : " ;
        finp() ;
        
        pre("cadre") ;
        ?>
        
             +-------+----------+-------+
             | idexo | mat      | diffi |
             +-------+----------+-------+
             |     1 | Calcul   |     1 |
             |     2 | Calcul   |     3 |
             |     3 | Histoire |     1 |
             |     4 | Calcul   |     1 |
             |     5 | Calcul   |     2 |
             |     6 | Histoire |     1 |
             |     7 | Histoire |     3 |
             +-------+----------+-------+
        
        
        <?php
        finpre() ;
        
        p("texte") ;
        echo "Que fait, calcule et affiche le programme PHP suivant après ".em("debutSection()") ;
        echo " et avant ".em("finSection()")."&nbsp;? " ;
        finp() ;
        
        # imprimer pour tout le monde le fichier ex1td6.ps
        
        pre("cadre") ;
        echo "\n" ;
        show_source("sen_exer_txt.php") ;
        echo "\n" ;
        finpre() ;
        
        p("texte") ;
        echo "On admettra que la fonction ".b("combien()")." est définie par les instructions suivantes : " ;
        finp() ;
        
        pre("cadre") ;
        echo "\n" ;
        show_source("combiens_inc.php") ;
        echo "\n" ;
        finpre() ;
        
        
        
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo "On voudrait produire via du PHP \"conceptuel\" une table des matières et des titres de section comme " ;
        echo " ceux des pages d'exercices, à savoir&nbsp;: " ;
        finp() ;
        
        pre("cadre") ;
        ?>
        
        
             &lt;h1&gt;&lt;font color="blue"&gt;Table des matières&lt;/font&gt;&lt;/h1&gt;
             &lt;ul&gt;
                 &lt;li&gt;série 1 : &lt;a href="#s1"&gt;le langage XHTML&lt;/a&gt;&lt;/li&gt;
                 &lt;li&gt;série 2 : &lt;a href="#s2"&gt;les styles CSS&lt;/a&gt;&lt;/li&gt;
             &lt;/ul&gt;
        
             &lt;h1&gt;&lt;font color="green"&gt;&lt;a name="s1"&gt;Série 1 : le langage XHTML&lt;/a&gt;&lt;/font&gt;&lt;/h1&gt;
             ...
        
             &lt;h1&gt;&lt;font color="green"&gt;&lt;a name="s2"&gt;Série 2 : les styles CSS&lt;/a&gt;&lt;/font&gt;&lt;/h1&gt;
             ..
        
        <?php
        finpre() ;
        
        p("texte") ;
        echo "Sachant qu'on veut fournir un document XHTML qui utilise une grammaire stricte, écrivez une " ;
        echo " structure PHP contenant le titre des deux séries puis donnez les instructions PHP qui fournissent " ;
        echo " le texte demandé. On inventera des fonctions dont on détaillera la syntaxe d'appel et les paramètres, mais dont on ne donnera pas " ;
        echo " le code." ;
        finp() ;
        
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo " Dans la table ".em("sen_exer")." on a un champ ".em("mat")." correspondant à la matière " ;
        echo " et un champ ".em("diffi")." correspondant à la difficulté, comme dans le TD précédent." ;
        echo " Ecrire en PHP un menu qui affiche le nombre d'exercices disponibles par matière et par difficulté" ;
        echo " à l'aide d'".b("une seule requ&ecirc;te MySql")."." ;
        #echo " Le lien derrière un couple (matière,difficulté) devra faire appel à un sous-programme qui fait " ;
        #echo " un tirage aléatoire d'un exercice parmi ceux concernés." ;
        finp() ;
        
        p("texte") ;
        echo "Voici un exemple d'un tel menu : " ;
        finp() ;
        
        pre("cadre") ;
        ?>
        
        
             Choisissez la matière et le niveau de difficulté de l'exercice :
        
        
                  Matière 1 :  Calcul
                        Difficulté 1 (5 exercices)
                        Difficulté 2 (5 exercices)
                        Difficulté 3 (3 exercices)
        
                  Matière 2 : Histoire
                        Difficulté 1 (7 exercices)
                        Difficulté 3 (6 exercices)
        
                  Matière 3 : Géographie
                  ...
        
        
        <?php
        finpre() ;
        
        p("texte") ;
        echo "Quelle est, à part le nombre de requ&ecirc;tes, la différence avec l'exercice 1 de ce TD&nbsp;? " ;
        finp() ;
        
        finli() ;
        
        debutli() ;
        p("texte") ;
        echo "Que fait, calcule et affiche le programme PHP suivant après ".em("debutSection()") ;
        echo " et avant ".em("finSection()")."&nbsp;? " ;
        finp() ;
        
        pre("cadre") ;
        echo "\n" ;
        show_source("sen_stat.php") ;
        echo "\n" ;
        finpre() ;
        
        p("texte") ;
        echo " sachant que le contenu du fichier inclus est : " ;
        finp() ;
        
        pre("cadre") ;
        echo "\n" ;
        show_source("sen_stat_txt.php") ;
        echo "\n" ;
        finpre() ;
        
        
        finli() ;
        
        finol() ;
        
        pvide() ;
        
        p() ;
        echo ancre("#tdm","Retour à la table des matières") ;
        finp() ;
        
        p() ;
        echo href("montresource.php?nomfic=sen_tds.php","Code-source de la page") ;
        finp() ;
        
        #########################################################
        
        finSection() ;
        finPage() ;
        ?>
        

La coloration syntaxique est réalisée par : SyntaxHighlighter.

Si vous préférez, vous pouvez utiliser celle de geshi ou même celle construite autour de la fonction highlight_file.

 

 

retour gH    Retour à la page principale de   (gH)