security_check(); if ($resultat_session == 'c') { header("Location: ../utilisateurs/mon_compte.php?change_mdp=yes"); die(); } else if ($resultat_session == '0') { header("Location: ../logout.php?auto=1"); die(); } if (!checkAccess()) { header("Location: ../logout.php?auto=1"); die(); } if(mb_strtolower(mb_substr(getSettingValue('active_mod_discipline'),0,1))!='y') { $mess=rawurlencode("Vous tentez d accéder au module Discipline qui est désactivé !"); tentative_intrusion(1, "Tentative d'accès au module Discipline qui est désactivé."); header("Location: ../accueil.php?msg=$mess"); die(); } require('sanctions_func_lib.php'); function get_denomination_prof($login) { $sql="SELECT nom,prenom,civilite FROM utilisateurs WHERE login='$login';"; $res=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res)==0) { return "Utilisateur inconnu"; } else { $lig=mysqli_fetch_object($res); return $lig->civilite." ".casse_mot($lig->nom)." ".mb_strtoupper(mb_substr($lig->prenom,0,1)); } } $is_posted=isset($_POST['is_posted']) ? $_POST['is_posted'] : NULL; $mode=isset($_POST['mode']) ? $_POST['mode'] : NULL; $nb_ele=isset($_POST['nb_ele']) ? $_POST['nb_ele'] : 10; $annee = strftime("%Y"); $mois = strftime("%m"); $jour = strftime("%d"); if($mois>7) { $date_debut_tmp="01/09/$annee"; // Et au format MySQL: $date_debut_annee="$annee-09-01"; $date_du_jour="$annee-$mois-$jour"; } else { $date_debut_tmp="01/09/".($annee-1); // Et au format MySQL: $date_debut_annee=($annee-1)."-09-01"; $date_du_jour=($annee-1)."-$mois-$jour"; } $date_debut_disc=isset($_POST['date_debut_disc']) ? $_POST['date_debut_disc'] : (isset($_POST['date_debut_disc1']) ? $_POST['date_debut_disc1'] : (isset($_SESSION['date_debut_disc']) ? $_SESSION['date_debut_disc'] : $date_debut_tmp)); $date_fin_disc=isset($_POST['date_fin_disc']) ? $_POST['date_fin_disc'] : (isset($_POST['date_fin_disc1']) ? $_POST['date_fin_disc1'] : (isset($_SESSION['date_fin_disc']) ? $_SESSION['date_fin_disc'] : "$jour/$mois/$annee")); $nature=isset($_POST['nature']) ? $_POST['nature'] : NULL; $id_mesure=isset($_POST['id_mesure']) ? $_POST['id_mesure'] : NULL; $nature_sanction=isset($_POST['nature_sanction']) ? $_POST['nature_sanction'] : NULL; $id_nature_sanction=isset($_POST['id_nature_sanction']) ? $_POST['id_nature_sanction'] : NULL; $style_specifique[] = "lib/DHTMLcalendar/calendarstyle"; $javascript_specifique[] = "lib/DHTMLcalendar/calendar"; $javascript_specifique[] = "lib/DHTMLcalendar/lang/calendar-fr"; $javascript_specifique[] = "lib/DHTMLcalendar/calendar-setup"; //**************** EN-TETE ***************** $titre_page = "Discipline: Statistiques"; require_once("../lib/header.inc.php"); //**************** FIN EN-TETE ***************** //debug_var(); echo "
Retour";
if(!isset($is_posted)) {
echo "
\n"; //================================================================================= //echo "
Dates : "; if($date_debut_disc!="") { // Tester la validité de la date // Si elle n'est pas valide... la vider if(preg_match("#/#",$date_debut_disc)) { $tmp_tab_date=explode("/",$date_debut_disc); if(!checkdate($tmp_tab_date[1],$tmp_tab_date[0],$tmp_tab_date[2])) { $date_debut_disc=""; } else { $date_debut_disc=$tmp_tab_date[2]."-".$tmp_tab_date[1]."-".$tmp_tab_date[0]; } } elseif(preg_match("/-/",$date_debut_disc)) { $tmp_tab_date=explode("-",$date_debut_disc); if(!checkdate($tmp_tab_date[1],$tmp_tab_date[2],$tmp_tab_date[0])) { $date_debut_disc=""; } } else { $date_debut_disc=""; } if($date_debut_disc=="") { // Si la date proposée est invalide, on force la date initiale au début de l'année: $date_debut_disc=$date_debut_annee; } if($date_debut_disc!="") { $date_debut_disc_formatee=formate_date($date_debut_disc); echo "du ".$date_debut_disc_formatee; $_SESSION['date_debut_disc']=$date_debut_disc_formatee; } } if($date_fin_disc!="") { // Tester la validité de la date // Si elle n'est pas valide... la vider // Tester la validité de la date // Si elle n'est pas valide... la vider if(preg_match("#/#",$date_fin_disc)) { $tmp_tab_date=explode("/",$date_fin_disc); if(!checkdate($tmp_tab_date[1],$tmp_tab_date[0],$tmp_tab_date[2])) { $date_fin_disc=""; } else { $date_fin_disc=$tmp_tab_date[2]."-".$tmp_tab_date[1]."-".$tmp_tab_date[0]; } } elseif(preg_match("/-/",$date_fin_disc)) { $tmp_tab_date=explode("-",$date_fin_disc); if(!checkdate($tmp_tab_date[1],$tmp_tab_date[2],$tmp_tab_date[0])) { $date_fin_disc=""; } } else { $date_fin_disc=""; } if($date_fin_disc=="") { // Si la date proposée est invalide, on force la date finale à la date du jour: $date_fin_disc=$date_du_jour; } if($date_fin_disc!="") { $date_fin_disc_formatee=formate_date($date_fin_disc); echo " au ".$date_fin_disc_formatee; $_SESSION['date_fin_disc']=$date_fin_disc_formatee; } } if(($date_debut_disc=="")&&($date_fin_disc=="")) { // Ca ne devrait plus arriver echo "aucune limite de dates"; } echo "
\n"; $restriction_date=""; if(($date_debut_disc!="")&&($date_fin_disc!="")) { $restriction_date.=" AND (si.date>='$date_debut_disc' AND si.date<='$date_fin_disc') "; } elseif($date_debut_disc!="") { $restriction_date.=" AND (si.date>='$date_debut_disc') "; } elseif($date_fin_disc!="") { $restriction_date.=" AND (si.date<='$date_fin_disc') "; } echo "".ucfirst($mod_disc_terme_incident)."s :
\n"; echo "| Nature | \n"; echo "Nombre d'".$mod_disc_terme_incident."s | \n"; /* echo "Classes | \n"; */ echo "\n"; if($nature[$i]=='') { echo "vide\n"; } else { echo $nature[$i]; } echo " | \n"; echo "\n"; $sql="SELECT * FROM s_incidents si WHERE si.nature='$nature[$i]' $restriction_date ORDER BY si.date DESC;"; $res=mysqli_query($GLOBALS["mysqli"], $sql); $nb_incidents=mysqli_num_rows($res); echo $nb_incidents; echo " | \n"; /* echo "\n";
if($nb_incidents==0) {
echo " ";
}
else {
// PROBLEME: ON RECUPERE LE TRIPLE DE L'EFFECTIF: On compte autant de fois un élève pour un incident qu'il appartient à des périodes de j_eleves_classes
$sql="SELECT DISTINCT c.classe, COUNT(sp.login) AS nb FROM classes c, j_eleves_classes jec, s_protagonistes sp, s_incidents si WHERE c.id=jec.id_classe AND jec.login=sp.login AND sp.id_incident=si.id_incident AND si.nature='$nature[$i]' AND sp.qualite='responsable' $restriction_date GROUP BY c.classe ORDER BY count(sp.login) DESC;";
echo "$sql \n"; $res2=mysql_query($sql); if(mysql_num_rows($res2)==0) { } else { $lig2=mysql_fetch_object($res2); echo "$lig2->classe ($lig2->nb)"; while($lig2=mysql_fetch_object($res2)) { echo ", $lig2->classe ($lig2->nb)"; } } } echo " | \n";
*/
echo "\n";
}
echo "
|---|
Mesures prises :
\n"; echo "| Mesure | \n"; echo "Nombre de mesures prises | \n"; echo "\n"; $sql="SELECT * FROM s_mesures WHERE id='$id_mesure[$i]';"; $res=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res)==0) { echo "Anomalie : Mesure inconnue"; } else { $lig=mysqli_fetch_object($res); echo $lig->mesure; } echo " | \n"; echo "\n"; $sql="SELECT * FROM s_traitement_incident sti, s_incidents si WHERE si.id_incident=sti.id_incident AND sti.id_mesure='$id_mesure[$i];' $restriction_date;"; $res=mysqli_query($GLOBALS["mysqli"], $sql); echo mysqli_num_rows($res); echo " | \n"; echo "\n"; } echo "
|---|
".ucfirst($mod_disc_terme_sanction)."s :
\n"; echo "| ".ucfirst($mod_disc_terme_sanction)." | \n"; echo "Nombre de ".$mod_disc_terme_sanction."s | \n"; echo "\n"; echo ucfirst($nature_sanction[$i]); echo " | \n"; echo "\n"; if($nature_sanction[$i]=='travail') { $sql="SELECT * FROM s_travail WHERE 1=1"; $restriction_date=""; if(($date_debut_disc!="")&&($date_fin_disc!="")) { $restriction_date.=" AND (date_retour>='$date_debut_disc' AND date_retour<='$date_fin_disc') "; } elseif($date_debut_disc!="") { $restriction_date.=" AND (date_retour>='$date_debut_disc') "; } elseif($date_fin_disc!="") { $restriction_date.=" AND (date_retour<='$date_fin_disc') "; } $sql.=$restriction_date; } elseif($nature_sanction[$i]=='retenue') { $sql="SELECT * FROM s_retenues WHERE 1=1"; $restriction_date=""; if(($date_debut_disc!="")&&($date_fin_disc!="")) { $restriction_date.=" AND (date>='$date_debut_disc' AND date<='$date_fin_disc') "; } elseif($date_debut_disc!="") { $restriction_date.=" AND (date>='$date_debut_disc') "; } elseif($date_fin_disc!="") { $restriction_date.=" AND (date<='$date_fin_disc') "; } $sql.=$restriction_date; } elseif($nature_sanction[$i]=='exclusion') { $sql="SELECT * FROM s_exclusions WHERE 1=1"; $restriction_date=""; if(($date_debut_disc!="")&&($date_fin_disc!="")) { $restriction_date.=" AND ((date_debut>='$date_debut_disc' AND date_debut<='$date_fin_disc') OR (date_fin>='$date_debut_disc' AND date_fin<='$date_fin_disc') OR (date_debut<='$date_debut_disc' AND date_fin>='$date_fin_disc'))"; } elseif($date_debut_disc!="") { $restriction_date.=" AND (date_fin>='$date_debut_disc') "; } elseif($date_fin_disc!="") { $restriction_date.=" AND (date_debut<='$date_fin_disc') "; } $sql.=$restriction_date; } $res=mysql_query($sql); echo mysql_num_rows($res); echo " | \n"; echo "\n"; } */ for($i=0;$i\n"; $sql="SELECT * FROM s_types_sanctions2 WHERE id_nature='$id_nature_sanction[$i]';"; $res=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res)==0) { echo "Anomalie : ".ucfirst($mod_disc_terme_sanction)." inconnue"; } else { $lig=mysqli_fetch_object($res); echo ucfirst($lig->nature); } echo " | \n"; echo "\n"; if($lig->type=='travail') { $sql="SELECT * FROM s_travail st, s_sanctions s WHERE st.id_sanction=s.id_sanction AND id_nature_sanction='$id_nature_sanction[$i]'"; $restriction_date=""; if(($date_debut_disc!="")&&($date_fin_disc!="")) { $restriction_date.=" AND (date_retour>='$date_debut_disc' AND date_retour<='$date_fin_disc') "; } elseif($date_debut_disc!="") { $restriction_date.=" AND (date_retour>='$date_debut_disc') "; } elseif($date_fin_disc!="") { $restriction_date.=" AND (date_retour<='$date_fin_disc') "; } $sql.=$restriction_date; } elseif($lig->type=='retenue') { $sql="SELECT * FROM s_retenues sr, s_sanctions s WHERE sr.id_sanction=s.id_sanction AND id_nature_sanction='$id_nature_sanction[$i]'"; $restriction_date=""; if(($date_debut_disc!="")&&($date_fin_disc!="")) { $restriction_date.=" AND (date>='$date_debut_disc' AND date<='$date_fin_disc') "; } elseif($date_debut_disc!="") { $restriction_date.=" AND (date>='$date_debut_disc') "; } elseif($date_fin_disc!="") { $restriction_date.=" AND (date<='$date_fin_disc') "; } $sql.=$restriction_date; } elseif($lig->type=='exclusion') { $sql="SELECT * FROM s_exclusions se, s_sanctions s WHERE se.id_sanction=s.id_sanction AND id_nature_sanction='$id_nature_sanction[$i]'"; $restriction_date=""; if(($date_debut_disc!="")&&($date_fin_disc!="")) { $restriction_date.=" AND ((date_debut>='$date_debut_disc' AND date_debut<='$date_fin_disc') OR (date_fin>='$date_debut_disc' AND date_fin<='$date_fin_disc') OR (date_debut<='$date_debut_disc' AND date_fin>='$date_fin_disc'))"; } elseif($date_debut_disc!="") { $restriction_date.=" AND (date_fin>='$date_debut_disc') "; } elseif($date_fin_disc!="") { $restriction_date.=" AND (date_debut<='$date_fin_disc') "; } $sql.=$restriction_date; } else { $restriction_date=""; if(($date_debut_disc!="")&&($date_fin_disc!="")) { $restriction_date.=" AND (si.date>='$date_debut_disc' AND si.date<='$date_fin_disc') "; } elseif($date_debut_disc!="") { $restriction_date.=" AND (si.date>='$date_debut_disc') "; } elseif($date_fin_disc!="") { $restriction_date.=" AND (si.date<='$date_fin_disc') "; } $sql="SELECT * FROM s_incidents si, s_sanctions s, s_autres_sanctions sas WHERE si.id_incident=s.id_incident AND s.id_sanction=sas.id_sanction AND id_nature='$id_nature_sanction[$i]' $restriction_date;"; } $res=mysqli_query($GLOBALS["mysqli"], $sql); echo mysqli_num_rows($res); echo " | \n"; echo "\n"; } echo "
|---|
Dates : "; if($date_debut_disc!="") { // Tester la validité de la date // Si elle n'est pas valide... la vider if(preg_match("#/#",$date_debut_disc)) { $tmp_tab_date=explode("/",$date_debut_disc); if(!checkdate($tmp_tab_date[1],$tmp_tab_date[0],$tmp_tab_date[2])) { $date_debut_disc=""; } else { $date_debut_disc=$tmp_tab_date[2]."-".$tmp_tab_date[1]."-".$tmp_tab_date[0]; } } elseif(preg_match("/-/",$date_debut_disc)) { $tmp_tab_date=explode("-",$date_debut_disc); if(!checkdate($tmp_tab_date[1],$tmp_tab_date[2],$tmp_tab_date[0])) { $date_debut_disc=""; } } else { $date_debut_disc=""; } if($date_debut_disc=="") { // Si la date proposée est invalide, on force la date initiale au début de l'année: $date_debut_disc=$date_debut_annee; } if($date_debut_disc!="") { echo "du ".formate_date($date_debut_disc); } } if($date_fin_disc!="") { // Tester la validité de la date // Si elle n'est pas valide... la vider // Tester la validité de la date // Si elle n'est pas valide... la vider if(preg_match("#/#",$date_fin_disc)) { $tmp_tab_date=explode("/",$date_fin_disc); if(!checkdate($tmp_tab_date[1],$tmp_tab_date[0],$tmp_tab_date[2])) { $date_fin_disc=""; } else { $date_fin_disc=$tmp_tab_date[2]."-".$tmp_tab_date[1]."-".$tmp_tab_date[0]; } } elseif(preg_match("#-#",$date_fin_disc)) { $tmp_tab_date=explode("-",$date_fin_disc); if(!checkdate($tmp_tab_date[1],$tmp_tab_date[2],$tmp_tab_date[0])) { $date_fin_disc=""; } } else { $date_fin_disc=""; } if($date_fin_disc=="") { // Si la date proposée est invalide, on force la date finale à la date du jour: $date_fin_disc=$date_du_jour; } if($date_fin_disc!="") { echo " au ".formate_date($date_fin_disc); } } if(($date_debut_disc=="")&&($date_fin_disc=="")) { // Ca ne devrait plus arriver echo "aucune limite de dates"; } echo "
\n"; echo "Aucun ".$mod_disc_terme_incident." avec élève responsable n'est enregistré.
\n"; } else { echo "Les $nb_ele élèves responsables du plus grand nombre d'".$mod_disc_terme_incident."s :
\n"; echo "| Elève | \n"; echo "Classe | \n"; echo "Nombre d'".$mod_disc_terme_incident."s | \n"; echo "
|---|---|---|
| \n"; echo ""; echo get_nom_prenom_eleve($lig->login); echo "\n"; echo " | \n"; echo "\n"; if(!isset($tab_classe[$lig->login])) { $tab_classe[$lig->login]=get_class_from_ele_login($lig->login); } echo $tab_classe[$lig->login]['liste_nbsp']; echo " | \n"; echo "\n"; echo $lig->nb; echo " | \n"; echo "
Aucun avec élève avec ".$mod_disc_terme_sanction." n'est enregistré.
\n"; } else { echo "Les $nb_ele élèves qui ont le plus de ".$mod_disc_terme_sanction."s :
\n"; echo "| Elève | \n"; echo "Classe | \n"; echo "Nombre de ".$mod_disc_terme_sanction."s | \n"; echo "
|---|---|---|
| \n"; echo ""; echo get_nom_prenom_eleve($lig->login); echo "\n"; echo " | \n"; echo "\n"; if(!isset($tab_classe[$lig->login])) { $tab_classe[$lig->login]=get_class_from_ele_login($lig->login); } echo $tab_classe[$lig->login]['liste_nbsp']; echo " | \n"; echo "\n"; echo $lig->nb; echo " | \n"; echo "
Aucun élève avec retenue n'est enregistré.
\n"; } else { echo "Les $nb_ele élèves qui ont le plus de retenues :
\n"; echo "| Elève | \n"; echo "Classe | \n"; echo "Nombre de retenues | \n"; echo "
|---|---|---|
| \n"; echo ""; echo get_nom_prenom_eleve($lig->login); echo "\n"; echo " | \n"; echo "\n"; if(!isset($tab_classe[$lig->login])) { $tab_classe[$lig->login]=get_class_from_ele_login($lig->login); } echo $tab_classe[$lig->login]['liste_nbsp']; echo " | \n"; echo "\n"; echo $lig->nb; echo " | \n"; echo "
Aucun élève avec exclusion n'est enregistré.
\n"; } else { echo "Les $nb_ele élèves qui ont le plus d'exclusions :
\n"; echo "| Elève | \n"; echo "Classe | \n"; echo "Nombre d'exclusions | \n"; echo "
|---|---|---|
| \n"; echo ""; echo get_nom_prenom_eleve($lig->login); echo "\n"; echo " | \n"; echo "\n"; if(!isset($tab_classe[$lig->login])) { $tab_classe[$lig->login]=get_class_from_ele_login($lig->login); } echo $tab_classe[$lig->login]['liste_nbsp']; echo " | \n"; echo "\n"; echo $lig->nb; echo " | \n"; echo "
Valeur de mode inconnu.
\n"; } require("../lib/footer.inc.php"); die(); ?>