Location: PHPKode > projects > EmploiNet : a timetable web manager > EmploiNet/v0.8.0/Salle/reparti_salle.php
<?  
    
  include("../BarreDeMenu.php3");  
    
  include("../Session/security.php");  
  include("../date.php3");  
 
//  if (isset($id_promotion[0])) echo $id_promotion[0]; 
//  if (isset($id_groupe)) echo $id_groupe; 
 
  // Entete  
    buildHeader("Répartition des salles");  
 
  // Verification de la session  
 	  $autorisation_list[0]=0; // Administrateur  
	  $autorisation_list[1]=3; // Gestionnaire  
	  $user_type = validateSession($id_session); 
 
  if ($user_type == -1 || !security($id_session,$autorisation_list))
  	 print("Accès refusé");  
  else  
    {  
 	 	// Barre de menu  
  	 	 buildMenuBar($id_session,$user_type,"../Planification/reparti_salle.php",false);  
	 	// Ouverture de la connexion  
    	 $connection = openConnection($databaseName);  
 
		// Verifie si le nombre de promotions est egal a 1 
        if ($user_type==3 && !isset($id_promotion[0]))  
        { 
            $user_id = getUserID($id_session); 
            $connection = openConnection($databaseName); 
            $result = mysql_query("SELECT distinct(promotion.id_promotion),diplome.libelle as L1,promotion.libelle as L2 
			FROM promotion,diplome,gerer WHERE gerer.id_gestionnaire=$user_id 
				AND promotion.id_promotion=gerer.id_promotion 
				AND diplome.id_diplome=promotion.id_diplome 
				ORDER BY diplome.libelle"); 
            $index_max = mysql_num_rows($result); 
            if ($index_max == 1) { 
   		$a_record = mysql_fetch_array($result); 
   		$id_promotion[0] = $a_record["id_promotion"]; 
   		$id_groupe = -1;
   	    } 
   	} 
    } 
 
// Variables globales 
 
 $G_id_matiere; 
 $G_nom; 
 $G_nb_matieres; 
 $un_type_seance;
  
 if (isset($id_promotion))
 	$n = count($id_promotion); // nombre de promotions selectionnees 
 else 
 	$n = 0; 
 
// Chargement de la liste des matieres suivies par la promotion ou le groupe 
if (!isset($id_groupe)) $id_groupe=-1;
 // Si une promotion ou un groupe est selectionne 
 if ($n > 0) 
 {  
	 // Si un groupe est selectionne 
	 if ($id_groupe != -1 && isset($id_groupe))
 	 { 	
 	 	//requete pour les matieres
     	$request1 = "SELECT matiere.id_matiere,matiere.nom 
   				FROM matiere,suivipargroupe,assurer
   				WHERE suivipargroupe.id_groupe = $id_groupe 
   					AND suivipargroupe.id_matiere = matiere.id_matiere 
   					AND assurer.id_matiere = matiere.id_matiere";
  		 $result1 = mysql_query($request1);  
  		 //requetes pour les types de seances
  		 $request2 = "SELECT (typeseance.id_type_seance),typeseance.type 
   				FROM typeseance,suivipargroupe,assurer
   				WHERE suivipargroupe.id_groupe = $id_groupe 
   					AND typeseance.id_type_seance = assurer.id_type_seance 
   					AND assurer.id_matiere = suivipargroupe.id_matiere";
  		 $result2 = mysql_query($request2);  
 		 //requetes pour les noms des professeurs
  		 $request3 = "SELECT professeur.id_professeur,professeur.nom
   				FROM professeur,suivipargroupe,assurer
   				WHERE suivipargroupe.id_groupe = $id_groupe  
   					AND assurer.id_matiere = suivipargroupe.id_matiere
   					AND assurer.id_professeur=professeur.id_professeur";
   					 
  		 $result3 = mysql_query($request3);    
 	 } 
 	 // Si une promotion est selectionnee 
  	else  
  	{ 
  		//requete pour les matieres
  	 	$request1 = "SELECT matiere.id_matiere,matiere.nom
   				 FROM matiere,suiviparpromotion,assurer
   				 WHERE suiviparpromotion.id_promotion = $id_promotion[0]
   				 	 AND suiviparpromotion.id_matiere = matiere.id_matiere 
   				 	 AND assurer.id_matiere = matiere.id_matiere"; 
    	  $result1 = mysql_query($request1);  
		//requetes pour les types de seances
    	  $request2 = "SELECT typeseance.id_type_seance,typeseance.type
   				 FROM typeseance,suiviparpromotion,assurer 
   				 WHERE suiviparpromotion.id_promotion = $id_promotion[0]
   					AND typeseance.id_type_seance = assurer.id_type_seance 
   					AND assurer.id_matiere = suiviparpromotion.id_matiere"; 
      $result2 = mysql_query($request2);
       //requetes pour les noms des professeurs
  		 $request3 = "SELECT professeur.id_professeur,professeur.nom
   				FROM professeur,suiviparpromotion,assurer
   				WHERE suiviparpromotion.id_promotion = $id_promotion[0]  
   					AND assurer.id_matiere = suiviparpromotion.id_matiere
   					AND assurer.id_professeur=professeur.id_professeur";
  		 $result3 = mysql_query($request3);
  	} 
  // Chargement des matieres dans les variables globales 
        $G_nb_matieres = mysql_num_rows($result1);  
        for ($i = 0;$i < $G_nb_matieres;$i++) 
 			 { 
  				 $une_matiere = mysql_fetch_array($result1); 
  				 $un_type_seance=mysql_fetch_array($result2);
				$un_professeur=mysql_fetch_array($result3);
  				 $G_id_matiere[$i] = $une_matiere["id_matiere"];
  				$G_nom[$i] = $une_matiere["nom"]; 
   				$G_type_seance[$i]=$un_type_seance["type"];
				$G_id_type_seance[$i]=$un_type_seance["id_type_seance"];
				$G_professeur[$i]=$un_professeur["nom"];
				$G_id_professeur[$i]=$un_professeur["id_professeur"];
  			 } 
}

if (isset($choice) && $choice==-3)
{
	$request_delete1 ="delete from requiert_type_salle where id_matiere='$s_id_matiere' and id_professeur='$s_id_professeur' and id_type_seance='$s_id_type_seance'";
	$selection_typesalle2=mysql_query($request_delete1);
	$t="typesalle_".$s_id_matiere."_".$s_id_type_seance."_".$s_id_professeur;
	$u=$$t;

	for ($i=0;$i<count($$t) ; $i++){
	
		print ("s_id_professeur =");print ($s_id_professeur);print ("<br>");
		print ("s_id_type_seance =");print ($s_id_type_seance);print ("<br>");
		$request_insert1 ="insert into requiert_type_salle 			values('$s_id_matiere','$u[$i]','$s_id_professeur','$s_id_type_seance')";
		$selection_typesalle=mysql_query($request_insert1); 
	}
}
if (isset($choice) && $choice==2)
{
	$request_delete2 ="delete from requiert_type_salle where id_matiere='$s_id_matiere' and id_professeur='$s_id_professeur' and id_type_seance='$s_id_type_seance'";
	$deselection_type_salle=mysql_query($request_delete2);
}
	print("<form name=\"form1\" action=\"reparti_salle.php\" method=post>\n");
    print("      <input type=\"hidden\" name=\"id_session\" value=\"$id_session\">\n"); 
    print("      <input type=\"hidden\" name=\"choice\" value=\"-3\">\n"); 
    print("      <input type=\"hidden\" name=\"s_id_matiere\" value=\"-1\">\n");
    print("      <input type=\"hidden\" name=\"s_id_type_salle\" value=\"-1\">\n");
    print("      <input type=\"hidden\" name=\"s_id_professeur\" value=\"-1\">\n");
    print("      <input type=\"hidden\" name=\"s_id_type_seance\" value=\"-1\">\n");
     print("  <table align=center border=0 cellspacing=0 cellpading=0 width=700 bgcolor=\"#C0C000\">\n"); 
     print("        <tr>\n"); 
// Liste des promotions  
        print("          <td valign=top width=100 nowrap rowspan=2><font size=3><i>Promotion :</i></font></td>\n"); 
     print("          <td width=250 rowspan=2>\n"); 
        include("../Liste/liste_promotion.php"); 
     print("          </td>\n"); 
// Liste des groupes associes a la promotion selectionnee 
     print("          <td valign=top width=100 nowrap><font size=3><i>Groupe :</i></font></td>\n"); 
        print("          <td valign=top width=250>\n"); 
        include("../Liste/liste_groupe.php"); 
        print("          </td>\n"); 
     print("        </tr>\n"); 
     print("      </table><br>\n"); 
//Requetes dont on a besoin ds le tableau
 		 $request4 = "SELECT * from typesalle";
  		 $result4 = mysql_query($request4);
		$G_nb_typesalle = mysql_num_rows($result4);  
        	for ($i = 0;$i < $G_nb_typesalle;$i++) 
 		{
			$un_typesalle = mysql_fetch_array($result4); 
   			$G_typesalle[$i] = $un_typesalle["libelle"]; 
			$id_typesalle[$i]=$un_typesalle["id_type_salle"];
  		} 
   // ************************  LE TABLEAU  *****************************************
	$G_typesalle_selectionnee;
     print("  <table align=center border=1 cellspacing=0 cellpading=0 width=700 bgcolor=\"#C0C000\">\n"); 
	print ("<tr>");
     print("        <th> Matière </th>"); 
     print("        <th> Type Séance </th>"); 
     print("        <th> Enseignant </th>"); 
     print("        <th> Type Salle </th>");
     print("        <th> Salle </th>"); 
	print ("</tr>");
	for ($i = 0;$i < $G_nb_matieres;$i++) 
 	{ 
 	print("<tr>");
		print ("<td align=center>");
 			print($G_nom[$i]);
 		print ("</td>");

 		print ("<td align=center>");
 			print($G_type_seance[$i]);
		print ("</td>");

 		print ("<td align=center>");
 			print($G_professeur[$i]);
		print ("</td>");

		print ("<td align=center>");
		print ("<select multiple name=\"typesalle_".$G_id_matiere[$i]."_".$G_id_type_seance[$i]."_".$G_id_professeur[$i]."[]\"
			 OnChange=\"s_id_professeur.value='$G_id_professeur[$i]';s_id_matiere.value='$G_id_matiere[$i]';
			  s_id_type_seance.value='$G_id_type_seance[$i]'; choice.value=-3; submit();\">");
		$request6 = "SELECT id_type_salle 
				FROM requiert_type_salle
				WHERE requiert_type_salle.id_matiere = $G_id_matiere[$i]
				AND requiert_type_salle.id_professeur = $G_id_professeur[$i]
				AND requiert_type_salle.id_type_seance = $G_id_type_seance[$i]";
  		$result6 = mysql_query($request6);
  		$G_nb_typesalle_selectionnees = mysql_num_rows($result6);
      		for ($l = 0;$l < $G_nb_typesalle_selectionnees;$l++){
			$un_typesalle_selectionnee = mysql_fetch_row($result6); 	 
   			$G_typesalle_selectionnee[$l] = $un_typesalle_selectionnee[0]; 
  			}			
		for ($j=0 ; $j <$G_nb_typesalle  ; $j++) {
			$found=false;
			for($l=0;$l<$G_nb_typesalle_selectionnees && !$found;$l++)		
				if ($G_typesalle_selectionnee[$l]==$id_typesalle[$j]) $found=true;
			if ($found) print("<option selected value=\"$id_typesalle[$j]\"> $G_typesalle[$j]");
			else print("<option value=\"$id_typesalle[$j]\"> $G_typesalle[$j]"); 	
		}
		print("</select>");
		print ("<br>");
		print ("<font size=1>");
	print("<input type=reset value='Tout effacer' 				onClick=\"javascript:s_id_professeur.value='$G_id_professeur[$i]';s_id_matiere.value='$G_id_matiere[$i]';
		s_id_type_seance.value='$G_id_type_seance[$i]';choice.value=2;submit();\">");
print ("</font>");
		print ("</td>");
  			print ("<td align=center>");
  		print ("<a href=liste_salles.php?id_groupe=$id_groupe&id_promotion=$id_promotion[0]&G_id_professeur=$G_id_professeur[$i]&G_id_matiere=$G_id_matiere[$i]&id_session=$id_session&G_id_type_seance=$G_id_type_seance[$i]>
					Voir </a>");
			print ("</td>");
 		print ("</tr>");
 	}
 print ("</form>"); 	
  	print(" </table><br>\n");
    buildEndOfPage();  
?>
Return current item: EmploiNet : a timetable web manager