Пример #1
0
             // indice contient le nom de la classe (son numero)
             $classe_courante = ClassePeer::doSelect($crit_classe_courante);
             $error = false;
             if ($classe_courante == null) {
                 $error = true;
                 echo "Erreur : impossible de recuperer la classe {$indice}<br/>";
             }
             if (count($classe_courante) > 1) {
                 $error = true;
                 echo "Erreur : plusieurs classes ayant le nom '{$indice}' sont pr&eacute;sentes.<br/>";
             }
             // Si on trouve la classe, et qu'il y en a bien qu'une seule, on recupere son id technique
             if (!$error) {
                 $crit_eleves_de_la_classe = new Criteria();
                 $crit_eleves_de_la_classe->add(JEleveClassePeer::ID_CLASSE, $classe_courante[0]->getId());
                 $eleves_de_la_classe = JEleveClassePeer::doSelect($crit_eleves_de_la_classe);
                 if ($eleves_de_la_classe != null) {
                     foreach ($eleves_de_la_classe as $eleve) {
                         $sql_ajout_rel_prof_princ = "INSERT INTO j_eleves_professeurs VALUES('" . $eleve->getLogin() . "','{$uid_as_login}'," . $classe_courante[0]->getId() . ")";
                         mysqli_query($GLOBALS["mysqli"], $sql_ajout_rel_prof_princ);
                     }
                 }
             }
         }
     } else {
         echo "Le prof {$prenom} {$nom} n'est pas professeur principal<br/>";
     }
 }
 // fin parcours de tous les profs
 /*
  * Résumé des profs trouvés :
Пример #2
0
  * Association des eleves a leur classes (pour chaque classe qui possede des periodes)
  * car on ne peut pas associer d'eleve a une classe sans periode
  */
 //Il faut reprendre les liens dans j_eleves_classes pour savoir dans quelle classe est chaque eleve
 // Et creer une ligne par periode de la classe
 // Peut-etre faire choisir à l'admin d'ajouter les les eleves pour toutes les periodes, ou juste pour la premiere
 // On cree un critere pour ramener tous les liens eleve_classe/periode qui sont temporaires
 // (c'est a dire qui ont un leur periode a 0 = pas de periode associe)
 echo "<br>";
 $crit = new Criteria();
 $crit->add(JEleveClassePeer::PERIODE, 0);
 // Construction d'un tableau contenant les id des classes pour lesquelles l'utilisateur
 // a defini un nombre de periodes (on ne va affecter les eleves QUE pour ces classes la)
 //$classes_avec_periodes_definies =
 //$crit->add(JEleveClassePeer::ID_CLASSE, );
 $relations_eleves_classes = JEleveClassePeer::doSelect($crit);
 // Pour chaque relation eleve_classe/periode
 foreach ($relations_eleves_classes as $relation_ec) {
     // Recuperation des periodes correspondantes a la classe de l'eleve
     echo "recuperation des periodes pour la classe " . $relation_ec->getIdClasse() . " <br>";
     $req_periodes_classe = "SELECT * FROM periodes WHERE id_classe = " . $relation_ec->getIdClasse();
     $periodes_de_la_classe = mysqli_query($GLOBALS["mysqli"], $req_periodes_classe);
     // Si on trouve des periodes,
     echo mysqli_num_rows($periodes_de_la_classe) . " periodes trouvees<br>";
     if (mysqli_num_rows($periodes_de_la_classe) > 0) {
         // On met d'abord a jour la relation temporaire eleve_classe deja presente
         // (en lui affectant le numero de premiere periode (normalement 1...))
         // Pour cela on recupere separement la premiere periode
         $periodes_de_la_classe_row = mysqli_fetch_object($periodes_de_la_classe);
         $relation_ec_a_modifier = JEleveClassePeer::retrieveByPK($relation_ec->getLogin(), $periodes_de_la_classe_row->id_classe, 0);
         //echo "relation a modifier : ".$relation_ec_a_modifier->getLogin()
Пример #3
0
	/**
	 * Retrieve object using using composite pkey values.
	 * @param      string $login
	 * @param      int $id_classe
	 * @param      int $periode
	 * @param      PropelPDO $con
	 * @return     JEleveClasse
	 */
	public static function retrieveByPK($login, $id_classe, $periode, PropelPDO $con = null) {
		$_instancePoolKey = serialize(array((string) $login, (string) $id_classe, (string) $periode));
 		if (null !== ($obj = JEleveClassePeer::getInstanceFromPool($_instancePoolKey))) {
 			return $obj;
		}

		if ($con === null) {
			$con = Propel::getConnection(JEleveClassePeer::DATABASE_NAME, Propel::CONNECTION_READ);
		}
		$criteria = new Criteria(JEleveClassePeer::DATABASE_NAME);
		$criteria->add(JEleveClassePeer::LOGIN, $login);
		$criteria->add(JEleveClassePeer::ID_CLASSE, $id_classe);
		$criteria->add(JEleveClassePeer::PERIODE, $periode);
		$v = JEleveClassePeer::doSelect($criteria, $con);

		return !empty($v) ? $v[0] : null;
	}