Petit nouveau ! |
2 Messages
19 mai 2010, 19:48
Pour plus de précision ci dessous le script en question avec en gras ce que j'ai ajouté pour obtenir le nb de validations mais ça ne marche pas , à l'affichage les élèves qui ont plusieurs validations sont confondus : même résultats pour plusieurs élèves ...
//obtenir les items du brevet $brevet_no
$resit =query("SELECT item_id
FROM items");
// on compte les items
$nb=mysql_num_rows($resit);
$reslib=query("SELECT libelles.base
FROM libelles,items
WHERE items.item_id=libelles.item_id");
if ($etab_niveau!="niv3")
{ print "<form method='post' action='".$PHP_SELF."?statut= $statut&classe_id=$classe_id&divcod=$divcod&objet= $objet&divgro=$divgro'>\n";
print "<input type='hidden' name='disc' value='$disc' >";
print "<p align='center'><input type='submit' class='coul' name='btn_niv' value='Autre niveau'>\n";
print "</p></form>";
}
print "<div align=\"center\"><table border='1'>\n";
print "<tr class='rubrique'>\n";
print "\t<td width='160'>Nom</td>";
print "\t<td width='140'>Prénom</td>";
$couleur="paire";
$rubrencours=0;
$couleur="impaire";
while ($rowit=mysql_fetch_array($resit))
{
$rowlib=mysql_fetch_array($reslib);
//on choisit le décalage de la bulle
if ($rowit["item_id"]<$nb/2) $decalbulle="decalbullec"; else {$decalbulle="decalbulled";}
// on extrait le numero du domaine
$rubr=intval(substr($rowlib["base"],2,1));
if ($couleur=="paire") $couleur="impaire";
else $couleur="paire";
print "<td width='15'class=\"".$couleur."\"><a class='bulle taillebullegde $decalbulle' href=#>".$rowit["item_id"]."<span> <b>Item ".$rowit["item_id"]."</b></br>".$rowlib["base"]."</span></a></td>";
$rubrencours=$rubr;
}
print "</tr>";
//Fin lecture items
//Préparation d'un tableau des élèves pour cette classe
$reseleves=query ("select eleves.eleve_id, eleves.nom, eleves.prenom, eleves.classe_id
FROM eleves , lien_eleves_classes WHERE eleves.eleve_id=lien_eleves_classes.eleve_id
AND lien_eleves_classes.classe_id=$classe_id AND eleves.annee='$sess_ascol'
ORDER BY nom, prenom;",$conn);
//comptage des élèves et Fabrication des lignes du tableau
$nbelev=0;
while ($rowelev=mysql_fetch_array($reseleves))
{
$eleve[$nbelev]=$rowelev["eleve_id"];
$elnom[$nbelev]=$rowelev["nom"];
$elprenom[$nbelev]=$rowelev["prenom"];
$nbelev++;
}
Print "<br><i>".$nbelev." élève".(($nbelev>1)?"s":"")."</i> ";
$old_divcod="";
for ($elev=0;$elev<$nbelev;$elev++)
{
$cl=($elev%2==0) ? "paire" : "impaire";
print "<tr class=$cl>\n";
print "\t<td width='100'> ".$elnom[$elev]." </td>\n";
print "\t<td width='100'> ".$elprenom[$elev]." </td>\n";
$cumul_items=0;
$tot_items=0;
//on cherche les nboui dans les demandes
$val=array();
$res=query(" SELECT eleves.eleve_id,demandes.item_id,
demandes.nboui,demandes.eleve_id FROM eleves,demandes
WHERE eleves.eleve_id=demandes.eleve_id
");
while (list($eleve_id,$item_id,$nboui)=mysql_fetch_array($res)) {
$val[$item_id]=array();
$dem=&$val[$item_id];
$dem['oui']=$nboui;
}
mysql_free_result($res);
//Nb de validations par elève
$resit =query("select item_id
FROM items ");
while ($rowit=mysql_fetch_array($resit))
{
$eleve_id= $eleve[$elev] ;
$item_id=$rowit["item_id"];
if (itemacquis( $eleve_id ,$item_id))
{$cellule="\t<td align=\"center\"> <img src=\"../images/boule_verte.gif\"> </td>";}
elseif ($val[$item_id])
{ $dem=&$val[$item_id];
$nboui=$dem['oui'];
$cellule="\t<td align=\"center\">$nboui</td>";
}
else {$cellule="\t<td align=\"center\"><img src=\"../images/boule_rouge.gif\"></td>";}
print $cellule;
}
}
print "</tr></table></div> ";
?>
</body>
</html>