contact

Questions/Réponses
16-17


Date Envoi / Message / Réponse

08/12/2016: SAMAH Oussama

Le TP des fonctions agrégats. Le premier celui qui calcule la moyenne des étudiants , et le 2ème celui de le max et le min de note dans chaque module :
Le premier:

<?php
  $id=mysql_connect("127.0.0.1","root","");
  if(!$id)
  { die("Connexion echoué <br>"); }
  
  $sel=mysql_select_db('gtr1617');
  if(!$sel)
  { echo "Erreur de selection de base de données <br>";}
  else 
  {
      $request="SELECT `etudiant`.`mat`,`nom`,sum(`note`*`coef`),sum(coef),sum(`note`*`coef`)/sum(coef)
           from `etudiant`,`avoir`,`module`
           where   `etudiant`.`mat`=`avoir`.`mat` and `module`.`code`=`avoir`.`code`
           group by `etudiant`.`mat` order by `nom`"; 

      $rep=mysql_query($request);
      if (!$rep)
      {
         echo "Erreur d'exécution de la commande SQL pour Selection et calcule";
      }
      else
      {
         $ligne=mysql_fetch_row($rep);
         echo "<tr> <td> Matricule  </td>  
               <td> Nom  </td> 
               <td> La Somme  </td>
               <td> S.Coef  </td>
               <td> <font color='red'> Note </font>  </td> ";    
         while($ligne)
         { echo "<table  border='1'>";
           $mat=$ligne[0];
           $nom=$ligne[1];
           $somme=$ligne[2];
           $scoef=$ligne[3];
           $note=$ligne[4];
                    
           $ligne=mysql_fetch_row($rep);

           echo "<br> <tr> <td> $mat  </td>  
                 <td> $nom  </td> <td> $somme  </td>
                 <td> $scoef  </td>
                 <td> <font color='red'> $note </font>  </td> ";
         } // while    
         echo "</table>";
      }
  }
?>

Le 2eme :

<?php
  $id=mysql_connect("127.0.0.1","root","");
  if(!$id)
  { die("Connexion echoué <br>"); }

  $sel=mysql_select_db('gtr1617');
  if(!$sel)
  { echo "Erreur de selection de base de données <br>";}
  else 
  {
    $request="SELECT `module` .`code` , `libelle` , max(`note`) , min(`note`) , count(`note`)
              from `etudiant`,`avoir`,`module`
              where   `etudiant`.`mat`=`avoir`.`mat` and `module`.`code`=`avoir`.`code`
              group by `module`.`code` having max(`note`) > 10"; 
    $rep=mysql_query($request);
    if (!$rep)
    {
      echo"Erreur d'exécution de la commande SQL pour Selection et calcule";
    }
    else
    {
      $ligne=mysql_fetch_row($rep);
      echo "<table  border='1'>";
      echo "<tr> <td> Code  </td>  
            <td> Lib  </td> 
            <td> Max  </td><td> Min </td>
            <td> <font color='red'> Count </font>  </td> ";    
      while($ligne)
      {
        $code=$ligne[0];
        $lib=$ligne[1];
        $max=$ligne[2];
        $min=$ligne[3];
        $count=$ligne[4];
                    
        $ligne=mysql_fetch_row($rep);
                    
        echo "<tr> <td> $code  </td>  
              <td> $lib </td> <td> $max  </td>
              <td> $min  </td>
              <td> <font color='red'> $count </font>  </td> ";
      }//while    
      echo "</table>";
    }
  }
?>

01/12/2016: SAMAH Oussama ( trrafikous@live.fr ) ...ci-joint mon script PHP ;
L'étudiant saisie son matricule et le code module puis en appuyant sur le buttons ' voir ma note' le script interroge la BDD et affiche le résultat.

Le formulaire:
le script je l'ai  nommé interactionBDD.php

<form methode="get" action="BDDinfoMat.php">
  Votre matricule : &nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="info" maxlength="12" size="12">
  <br>Le code de module:<input type="text" name="cd" maxlength="12" size="12">
  <br><input type="submit" name="button" value="voir ma note"> 
</form>

<table cellpadding="10" cellspacing="10" border="2">
  <tr><td><font color="#E33134" >Code </font></td><td><font color="#E33134" >Module</font></td></tr>
  <tr><td>10</td><td>PROG</td></tr>
  <tr><td>01</td><td>SCAN</td></tr>
  <tr><td>11</td><td>TICT</td></tr>
  <tr><td>110</td><td>STIR</td></tr>
</table>
<br><br>
Le script2:

'BDDinfoMat.php'

<?php
   $matetud=$_GET["info"];
   $infocd=$_GET["cd"];
   if(!$matetud || !$infocd)
   {
      echo "Vous devez remplir tout les champs";
      die("<br> <a href='interactionBDD.php'>Re-saisir les données</a> ");
   }
   if($infocd==10 ||$infocd ==11 || $infocd ==01 || $infocd==110)
   { $id=mysql_connect("127.0.0.1","root","");
     if(!$id)
     { die("Connexion echoué <br>"); }
     //else
        //echo"Connexion établie <br>";des testes de controle
     $sel=mysql_select_db('gtr1617');
     if(!$sel)
     { echo"Erreur de selection de base de données <br>";}
     else 
     { //echo"BDD selection GTR1617 <br>";
       //distinct pour ne pas afficher la redondance 
       // Pour libelle et note on'a pas ecrit 
       //L'ordre des tables est important 

       $request="SELECT distinct `module`.`libelle`,`note`
           from `module`,`avoir`,`etudiant`
           where   `etudiant`.`mat`='$matetud' and `etudiant`.`mat`=`avoir`.`mat`
             and `avoir`.`code`='$infocd' and `avoir`.`code`=`module`.`code` order by `note`";
       $rep=mysql_query($request);
       if ($rep)
       { // echo"La requette est bien executé <br>"; Message de controle d'execution de la requette
         echo"<br>Votre note ";
         $ligne=mysql_fetch_row($rep);
         while($ligne)
         { //echo"<table>";
           $name=$ligne[0];
           $note=$ligne[1];
           //$res=$ligne[2];
           $ligne=mysql_fetch_row($rep);
           echo"dans le module <font color='red'>'$name'</font> est:";
           echo"<br>$note  ";
           //echo"<br> <tr> <td>$cd</td>   $name 
         }//while
       }//2eme if 
      }//1er if
    }
    else
    { echo"Veuillez saisir un code qui existe";die("<br> <a href='interactionBDD.php'>Re-saisir les données</a> ");}
    echo"<br> <a href='interactionBDD.php'>Voir les notes des autres modules!</a> ";
?>

20/10/2016: DJEBBAR Ahmed Katib je vous envoi mes deux codes fait ce matin au TP Prog.Web comme c'était prévu

Le fichier HTML :

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Document sans nom</title>
</head>

<body>
<form method="get" action="exo3_tri.php">
<p>
<label for="a">Valeur 1:</label>
<input name="a" type="text" id="a" value="12" size="10" maxlength="5">
</p>
<p>
<label for="b">Valeur 2:</label>
<input name="b" type="text" id="b" value="13" size="10" maxlength="5">
</p>
<p>
<label for="c">Valeur 3:</label>
<input name="c" type="text" id="c" value="22" size="10" maxlength="5">
</p>
<p>
<label for="d">Valeur 4:</label>
<input name="d" type="text" id="d" value="6" size="10" maxlength="5">
</p>
<p>
<label for="e">Valeur 5:</label>
<input name="e" type="text" id="e" value="172" size="10" maxlength="5">
</p>
<p> </p>
<div align="center"> <input type="submit" value="Trier">
</div>
</form>
</body>
</html>

Le fichier PHP (exo3_tri.php) :

<?php 
$var1=$_GET["a"];
$var2=$_GET["b"];
$var3=$_GET["c"];
$var4=$_GET["d"];
$var5=$_GET["e"];
$tab= array($var1,$var2,$var3,$var4,$var5);
for($i=0;$i<=3;$i++){
for($j=$i+1;$j<=4;$j++){
if ($tab[$i]>$tab[$j]){
$x=$tab[$i];
$tab[$i]=$tab[$j];
$tab[$j]=$x;
}
}
}
$_GET["a"]=$tab[0];
$_GET["b"]=$tab[1];
$_GET["c"]=$tab[2];
$_GET["d"]=$tab[3];
$_GET["e"]=$tab[4];
echo "<!doctype html>
<html>
<head>
<meta charset='utf-8'>
<title>Document sans nom</title>
</head>

<body>
<form >
<p>
<label for='a'>Valeur 1:</label>
<input name='a' type='text' id='a' value='$tab[0]' size='10' maxlength='5'>
</p>
<p>
<label for='b'>Valeur 2:</label>
<input name='b' type='text' id='b' value='$tab[1]' size='10' maxlength='5'>
</p>
<p>
<label for='c'>Valeur 3:</label>
<input name='c' type='text' id='c' value='$tab[2]' size='10' maxlength='5'>
</p>
<p>
<label for='d'>Valeur 4:</label>
<input name='d' type='text' id='d' value='$tab[3]' size='10' maxlength='5'>
</p>
<p>
<label for='e'>Valeur 5:</label>
<input name='e' type='text' id='e' value='$tab[4]' size='10' maxlength='5'>
</p>
<div align='center'> <input type='submit' value='Trier'>
</div>
</form>
</body>
</html>";
?>
OK