[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 <?php 2 3 4 /** 5 6 * Lecture des fichiers CSV/XML de Sconet 7 * @Version $Id: lecture_xml_sts_emp.php 8600 2015-03-16 20:12:30Z plouf $ 8 9 * @Projet LCS / SambaEdu 10 11 * @auteurs Stephane Boireau (Animateur de Secteur pour les TICE sur Bernay/Pont-Audemer (27)) 12 13 * @Licence Distribue selon les termes de la licence GPL 14 15 * @note 16 */ 17 18 /** 19 20 * @Repertoire: annu 21 * file: lecture_xml_sts_emp.php 22 */ 23 24 25 /*@set_time_limit(0); 26 27 28 // Initialisations files 29 require_once("../lib/initialisations.inc.php"); 30 31 // Resume session 32 $resultat_session = resumeSession(); 33 if ($resultat_session == 'c') { 34 header("Location: ../utilisateurs/mon_compte.php?change_mdp=yes"); 35 die(); 36 } else if ($resultat_session == '0') { 37 header("Location: ../logout.php?auto=1"); 38 die(); 39 }; 40 41 if (!checkAccess()) { 42 header("Location: ../logout.php?auto=1"); 43 die(); 44 } 45 */ 46 47 48 49 /** 50 * Fonction de generation de mot de passe recuperee sur TotallyPHP 51 * Aucune mention de licence pour ce script... 52 * @Parametres 53 * @return le mot de passe genere 54 55 * The letter l (lowercase L) and the number 1 56 * have been removed, as they can be mistaken 57 * for each other. 58 59 */ 60 61 62 // HTMLPurifier 63 require_once ("traitement_data.inc.php"); 64 65 66 function createRandomPassword() { 67 $chars = "abcdefghijkmnopqrstuvwxyz023456789"; 68 srand((double)microtime()*1000000); 69 $i = 0; 70 $pass = '' ; 71 72 //while ($i <= 7) { 73 while ($i <= 5) { 74 $num = rand() % 33; 75 $tmp = substr($chars, $num, 1); 76 $pass = $pass . $tmp; 77 $i++; 78 } 79 80 return $pass; 81 } 82 //================================================ 83 84 ?> 85 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 86 <html> 87 <head> 88 <title>Lecture du XML Emploi du temps de Sts-web et génération de CSV</title> 89 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 90 <meta name="author" content="Stephane Boireau, A.S. RUE de Bernay/Pont-Audemer" /> 91 <!--link type="text/css" rel="stylesheet" href="../styles.css" /--> 92 <link type="text/css" rel="stylesheet" href="../style.css" /> 93 </head> 94 <body> 95 <div class="content"> 96 <?php 97 //$nom_corrige = preg_replace("/[^.a-zA-Z0-9_=-]+/", "_", $sav_file['name']); 98 99 /* 100 Pour GIBII, il faudrait generer des lignes du type: 101 code#mdp;nom;prenom;dateNaiss;liste des classes separees par des virgules 102 ou code semble etre le login 103 */ 104 105 if(isset($_GET['nettoyage'])){ 106 echo "<h1 align='center'>Suppression des CSV</h1>\n"; 107 108 $doss_date=$_GET['date']; 109 //echo "strlen(preg_replace("\[0-9_]\",\"\",$doss_date))=".strlen(preg_replace("/[0-9_]/","",$doss_date))."<br />"; 110 //echo "strlen(preg_replace(\"[0-9_]\",\"\",$doss_date))=strlen(".preg_replace("/[0-9_]/","",$doss_date).")<br />"; 111 //echo "\$doss_date=$doss_date<br />"; 112 if(strlen(preg_replace("/[0-9_.]/","",$doss_date))!=0){ 113 echo "<p style='color:red;'>Erreur! Le paramètre date fourni n'est pas correct.</p>\n"; 114 echo "<p>Retour à l'<a href='".$_SERVER['PHP_SELF']."'>index</a></p>\n"; 115 echo "</div></body></html>\n"; 116 } 117 else{ 118 $dossiercsv="csv/".$doss_date; 119 } 120 121 echo "<p>Si des fichiers CSV existent, ils seront supprimés...</p>\n"; 122 //$tabfich=array("f_wind.csv","f_men.csv","f_gpd.csv","f_div.csv","f_tmt.csv","profs.html"); 123 $tabfich=array("f_wind.csv","f_men.csv","f_gpd.csv","f_div.csv","f_tmt.csv","profs.html","f_wind.txt","f_men.txt","f_div.txt"); 124 for($i=0;$i<count($tabfich);$i++){ 125 if(file_exists("$dossiercsv/se3/$tabfich[$i]")){ 126 echo "<p>Suppression de se3/$tabfich[$i]... "; 127 if(unlink("$dossiercsv/se3/$tabfich[$i]")){ 128 echo "réussie.</p>\n"; 129 } 130 else{ 131 echo "<font color='red'>Echec!</font> Vérifiez les droits d'écriture sur le serveur.</p>\n"; 132 } 133 } 134 if(file_exists("$dossiercsv/gepi/$tabfich[$i]")){ 135 echo "<p>Suppression de gepi/$tabfich[$i]... "; 136 if(unlink("$dossiercsv/gepi/$tabfich[$i]")){ 137 echo "réussie.</p>\n"; 138 } 139 else{ 140 echo "<font color='red'>Echec!</font> Vérifiez les droits d'écriture sur le serveur.</p>\n"; 141 } 142 } 143 } 144 if(file_exists("$dossiercsv/gepi")){ 145 if(!rmdir("$dossiercsv/gepi")){echo "ERREUR de suppression de $dossiercsv/gepi<br />";} 146 } 147 if(file_exists("$dossiercsv/se3")){ 148 rmdir("$dossiercsv/se3"); 149 } 150 if(file_exists("$dossiercsv")){ 151 rmdir("$dossiercsv"); 152 } 153 echo "<p><a href='".$_SERVER['PHP_SELF']."'>Retour</a>.</p>\n"; 154 } 155 else{ 156 echo "<h1 align='center'>Lecture du XML Emploi du temps de Sts-web et génération de CSV</h1>\n"; 157 if(!isset($_POST['is_posted'])){ 158 echo "<p>Cette page permet de remplir des tableaux PHP avec les informations professeurs, matières<br />\n"; 159 echo "<b>Attention:</b>Les liaisons profs/matières/classes ne sont remplies dans le fichier XML de STS qu'une fois l'emploi du temps remonté.</p>"; 160 echo "<p>Cette page génère des fichiers CSV:</p>\n"; 161 echo "<ul>\n"; 162 echo "<li>\n"; 163 echo "<p><b>Pour SambaEdu3:</b></p>\n"; 164 echo "<ul>\n"; 165 echo "<li>f_wind.txt</li>\n"; 166 echo "<li>f_div.txt</li>\n"; 167 echo "<li>f_men.txt</li>\n"; 168 echo "</ul>\n"; 169 echo "</li>\n"; 170 echo "<li>\n"; 171 echo "<p><b>Pour Gepi:</b></p>\n"; 172 echo "<ul>\n"; 173 echo "<li>f_wind.csv</li>\n"; 174 echo "<li>f_div.csv</li>\n"; 175 echo "<li>f_men.csv</li>\n"; 176 echo "<li>f_gpd.csv</li>\n"; 177 echo "<li>f_tmt.csv</li>\n"; 178 echo "</ul>\n"; 179 echo "</li>\n"; 180 echo "</ul>\n"; 181 echo "<p>Il faut lui fournir un Export XML réalisé depuis l'application STS-web.<br />Demandez gentillement à votre secrétaire d'accéder à STS-web et d'effectuer 'Mise à jour/Exports/Emplois du temps'.</p>\n"; 182 echo "<form enctype='multipart/form-data' action='".$_SERVER['PHP_SELF']."' method='post'>\n"; 183 echo "<p>Veuillez fournir le fichier XML: \n"; 184 echo "<p><input type=\"file\" size=\"80\" name=\"xml_file\">\n"; 185 echo "<input type='hidden' name='is_posted' value='yes'>\n"; 186 echo "</p>\n"; 187 echo "<p> Pour GEPI:<br />\n"; 188 echo "<input type=\"radio\" name=\"mdp\" value=\"alea\" checked> Générer un mot de passe aléatoire pour chaque professeur.<br />\n"; 189 echo "<input type=\"radio\" name=\"mdp\" value=\"date\"> Utiliser plutôt la date de naissance au format 'aaaammjj' comme mot de passe initial (<i>il devra être modifié au premier login</i>).</p>\n"; 190 echo "<input type='hidden' name='is_posted' value='yes'>\n"; 191 //echo "</p>\n"; 192 echo "<p><input type='submit' value='Valider'></p>\n"; 193 echo "</form>\n"; 194 } 195 else{ 196 // Initialisation du repertoire actuel de sauvegarde 197 // Pour integration dans Gepi: 198 //$dirname = getSettingValue("backup_directory"); 199 //$dossiercsv="../backup/$dirname/csv"; 200 201 //$dossiercsv="csv/".strtr(substr(microtime(),1)," ","_"); 202 $doss_date=$_SERVER['REMOTE_ADDR'].strtr(substr(microtime(),2)," ","_"); 203 //$dossiercsv="csv/".$doss_date; 204 $dossiercsv="csv/".$doss_date; 205 //mkdir($dossiercsv); 206 //echo "\$dossiercsv=$dossiercsv<br />\n"; 207 208 $temoin_creation_fichiers="oui"; 209 if(!file_exists("csv")){ 210 //if(!mkdir("$dossiercsv","0770")){ 211 if(!mkdir("csv")){ 212 /* 213 echo "<p style='color:red;'>Erreur! Le dossier csv n'a pas pu être créé.</p>\n"; 214 echo "<p>Retour à l'<a href='".$_SERVER['PHP_SELF']."'>index</a></p>\n"; 215 echo "</div></body></html>\n"; 216 die(); 217 */ 218 echo "<p style='color:red;'>Erreur! Le dossier csv n'a pas pu être créé.<br />Les fichiers ne seront pas générés, mais vous pourrez remplir vos fichiers par copier/coller depuis cette page.</p>\n"; 219 $temoin_creation_fichiers="non"; 220 } 221 } 222 223 //if(!file_exists("$dossiercsv")){ 224 //if(!file_exists("$dossiercsv/se3")){ 225 if(!file_exists("$dossiercsv")){ 226 //if(!mkdir("$dossiercsv","0770")){ 227 if(!mkdir("$dossiercsv")){ 228 echo "<p style='color:red;'>Erreur! Le dossier csv n'a pas pu être créé.<br />Les fichiers ne seront pas générés, mais vous pourrez remplir vos fichiers par copier/coller depuis cette page.</p>\n"; 229 //echo "<p>Retour à l'<a href='".$_SERVER['PHP_SELF']."'>index</a></p>\n"; 230 //echo "</div></body></html>\n"; 231 //die(); 232 $temoin_creation_fichiers="non"; 233 } 234 else{ 235 if(!file_exists("$dossiercsv/se3")){ 236 if(!mkdir("$dossiercsv/se3")){ 237 echo "<p style='color:red;'>Erreur! Le dossier csv/se3 n'a pas pu être créé.<br />Les fichiers ne seront pas générés, mais vous pourrez remplir vos fichiers par copier/coller depuis cette page.</p>\n"; 238 //echo "<p>Retour à l'<a href='".$_SERVER['PHP_SELF']."'>index</a></p>\n"; 239 //echo "</div></body></html>\n"; 240 //die(); 241 $temoin_creation_fichiers="non"; 242 } 243 } 244 if(!file_exists("$dossiercsv/gepi")){ 245 if(!mkdir("$dossiercsv/gepi")){ 246 echo "<p style='color:red;'>Erreur! Le dossier csv/gepi n'a pas pu être créé.<br />Les fichiers ne seront pas générés, mais vous pourrez remplir vos fichiers par copier/coller depuis cette page.</p>\n"; 247 //echo "<p>Retour à l'<a href='".$_SERVER['PHP_SELF']."'>index</a></p>\n"; 248 //echo "</div></body></html>\n"; 249 //die(); 250 $temoin_creation_fichiers="non"; 251 } 252 } 253 } 254 } 255 256 $temoin_au_moins_un_prof_princ=""; 257 258 $xml_file = isset($_FILES["xml_file"]) ? $_FILES["xml_file"] : NULL; 259 $fp=fopen($xml_file['tmp_name'],"r"); 260 if($fp){ 261 echo "<h2>Première phase...</h2>\n"; 262 echo "<blockquote>\n"; 263 echo "<h3>Lecture du fichier...</h3>\n"; 264 echo "<blockquote>\n"; 265 while(!feof($fp)){ 266 $ligne[]=fgets($fp,4096); 267 } 268 fclose($fp); 269 echo "<p>Terminé.</p>\n"; 270 echo "<p>Aller à la <a href='#se3'>section SambaEdu3</a></p>\n"; 271 echo "<p>Aller à la <a href='#gepi'>section GEPI</a><br />Si vous patientez, des liens directs seront proposés pour télécharger les fichiers.</p>\n"; 272 echo "</blockquote>\n"; 273 274 echo "<h3>Affichage du XML</h3>\n"; 275 echo "<blockquote>\n"; 276 echo "<table border='0'>\n"; 277 $cpt=0; 278 while($cpt<count($ligne)){ 279 echo "<tr>\n"; 280 echo "<td style='color: blue;'>$cpt</td><td>".htmlentities($ligne[$cpt])."</td>\n"; 281 echo "</tr>\n"; 282 $cpt++; 283 } 284 echo "</table>\n"; 285 echo "<p>Terminé.</p>\n"; 286 echo "</blockquote>\n"; 287 echo "</blockquote>\n"; 288 289 290 291 echo "<h2>Etablissement</h2>\n"; 292 echo "<blockquote>\n"; 293 echo "<h3>Analyse du fichier pour extraire les paramètres de l'établissement...</h3>\n"; 294 echo "<blockquote>\n"; 295 $cpt=0; 296 $etablissement=array(); 297 $temoin_param=0; 298 $temoin_academie=0; 299 $temoin_annee=0; 300 while($cpt<count($ligne)){ 301 //echo htmlentities($ligne[$cpt])."<br />\n"; 302 if(strstr($ligne[$cpt],"<PARAMETRES>")){ 303 echo "Début de la section PARAMETRES à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 304 $temoin_param++; 305 } 306 if(strstr($ligne[$cpt],"</PARAMETRES>")){ 307 echo "Fin de la section PARAMETRES à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 308 $temoin_param++; 309 } 310 if($temoin_param==1){ 311 // On analyse maintenant matiere par matiere: 312 /* 313 if(strstr($ligne[$cpt],"<UAJ CODE=")){ 314 unset($tabtmp); 315 $tabtmp=explode('"',$ligne[$cpt]); 316 $etablissement["code"]=$tabtmp[1]; 317 $temoin_uaj=1; 318 //echo "\$temoin_uaj=$temoin_uaj à la ligne $cpt et \$tabtmp[1]=$tabtmp[1]<br />\n"; 319 } 320 */ 321 if(strstr($ligne[$cpt],"<UAJ ")){ 322 unset($tabtmp); 323 $tabtmp=explode('"',strstr($ligne[$cpt]," CODE=")); 324 $etablissement["code"]=$tabtmp[1]; 325 $temoin_uaj=1; 326 //echo "\$temoin_uaj=$temoin_uaj à la ligne $cpt et \$tabtmp[1]=$tabtmp[1]<br />\n"; 327 } 328 if(strstr($ligne[$cpt],"</UAJ>")){ 329 $temoin_uaj=0; 330 } 331 if($temoin_uaj==1){ 332 if(strstr($ligne[$cpt],"<ACADEMIE>")){ 333 $temoin_academie=1; 334 $etablissement["academie"]=array(); 335 } 336 if(strstr($ligne[$cpt],"</ACADEMIE>")){ 337 $temoin_academie=0; 338 } 339 if($temoin_academie==1){ 340 if(strstr($ligne[$cpt],"<CODE>")){ 341 unset($tabtmp); 342 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 343 $etablissement["academie"]["code"]=$tabtmp[2]; 344 } 345 if(strstr($ligne[$cpt],"<LIBELLE>")){ 346 unset($tabtmp); 347 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 348 $etablissement["academie"]["libelle"]=$tabtmp[2]; 349 } 350 } 351 else{ 352 if(strstr($ligne[$cpt],"<SIGLE>")){ 353 unset($tabtmp); 354 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 355 $etablissement["sigle"]=$tabtmp[2]; 356 } 357 if(strstr($ligne[$cpt],"<DENOM_PRINC>")){ 358 unset($tabtmp); 359 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 360 $etablissement["denom_princ"]=$tabtmp[2]; 361 } 362 if(strstr($ligne[$cpt],"<DENOM_COMPL>")){ 363 unset($tabtmp); 364 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 365 $etablissement["denom_compl"]=$tabtmp[2]; 366 } 367 if(strstr($ligne[$cpt],"<CODE_NATURE>")){ 368 unset($tabtmp); 369 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 370 $etablissement["code_nature"]=$tabtmp[2]; 371 } 372 if(strstr($ligne[$cpt],"<CODE_CATEGORIE>")){ 373 unset($tabtmp); 374 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 375 $etablissement["code_categorie"]=$tabtmp[2]; 376 } 377 if(strstr($ligne[$cpt],"<ADRESSE>")){ 378 unset($tabtmp); 379 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 380 $etablissement["adresse"]=$tabtmp[2]; 381 } 382 if(strstr($ligne[$cpt],"<COMMUNE>")){ 383 unset($tabtmp); 384 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 385 $etablissement["commune"]=$tabtmp[2]; 386 } 387 if(strstr($ligne[$cpt],"<CODE_POSTAL>")){ 388 unset($tabtmp); 389 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 390 $etablissement["code_postal"]=$tabtmp[2]; 391 } 392 if(strstr($ligne[$cpt],"<BOITE_POSTALE>")){ 393 unset($tabtmp); 394 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 395 $etablissement["boite_postale"]=$tabtmp[2]; 396 } 397 if(strstr($ligne[$cpt],"<CEDEX>")){ 398 unset($tabtmp); 399 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 400 $etablissement["cedex"]=$tabtmp[2]; 401 } 402 if(strstr($ligne[$cpt],"<TELEPHONE>")){ 403 unset($tabtmp); 404 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 405 $etablissement["telephone"]=$tabtmp[2]; 406 } 407 if(strstr($ligne[$cpt],"<STATUT>")){ 408 unset($tabtmp); 409 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 410 $etablissement["statut"]=$tabtmp[2]; 411 } 412 if(strstr($ligne[$cpt],"<ETABLISSEMENT_SENSIBLE>")){ 413 unset($tabtmp); 414 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 415 $etablissement["etablissement_sensible"]=$tabtmp[2]; 416 } 417 } 418 } 419 420 421 /* 422 if(strstr($ligne[$cpt],"<ANNEE_SCOLAIRE ANNEE=")){ 423 unset($tabtmp); 424 $tabtmp=explode('"',$ligne[$cpt]); 425 $etablissement["annee"]=array(); 426 $etablissement["annee"]["annee"]=$tabtmp[1]; 427 $temoin_annee=1; 428 } 429 */ 430 if(strstr($ligne[$cpt],"<ANNEE_SCOLAIRE ")){ 431 unset($tabtmp); 432 $tabtmp=explode('"',strstr($ligne[$cpt]," ANNEE")); 433 $etablissement["annee"]=array(); 434 $etablissement["annee"]["annee"]=$tabtmp[1]; 435 $temoin_annee=1; 436 } 437 if(strstr($ligne[$cpt],"</ANNEE_SCOLAIRE>")){ 438 $temoin_annee=0; 439 } 440 if($temoin_annee==1){ 441 if(strstr($ligne[$cpt],"<DATE_DEBUT>")){ 442 unset($tabtmp); 443 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 444 $etablissement["annee"]["date_debut"]=$tabtmp[2]; 445 } 446 if(strstr($ligne[$cpt],"<DATE_FIN>")){ 447 unset($tabtmp); 448 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 449 $etablissement["annee"]["date_fin"]=$tabtmp[2]; 450 } 451 } 452 } 453 $cpt++; 454 } 455 echo "<p>Terminé.</p>\n"; 456 echo "</blockquote>\n"; 457 458 echo "<h3>Affichage des données PARAMETRES établissement extraites:</h3>\n"; 459 echo "<blockquote>\n"; 460 echo "<table border='1'>\n"; 461 echo "<tr>\n"; 462 //echo "<th style='color: blue;'> </th>\n"; 463 echo "<th>Code</th>\n"; 464 echo "<th>Code academie</th>\n"; 465 echo "<th>Libelle academie</th>\n"; 466 echo "<th>Sigle</th>\n"; 467 echo "<th>Denom_princ</th>\n"; 468 echo "<th>Denom_compl</th>\n"; 469 echo "<th>Code_nature</th>\n"; 470 echo "<th>Code_categorie</th>\n"; 471 echo "<th>Adresse</th>\n"; 472 echo "<th>Code_postal</th>\n"; 473 echo "<th>Boite_postale</th>\n"; 474 echo "<th>Cedex</th>\n"; 475 echo "<th>Telephone</th>\n"; 476 echo "<th>Statut</th>\n"; 477 echo "<th>Etablissement_sensible</th>\n"; 478 echo "<th>Annee</th>\n"; 479 echo "<th>Date_debut</th>\n"; 480 echo "<th>Date_fin</th>\n"; 481 echo "</tr>\n"; 482 //$cpt=0; 483 //while($cpt<count($etablissement)){ 484 echo "<tr>\n"; 485 //echo "<td style='color: blue;'>$cpt</td>\n"; 486 //echo "<td style='color: blue;'> </td>\n"; 487 echo "<td>".$etablissement["code"]."</td>\n"; 488 echo "<td>".$etablissement["academie"]["code"]."</td>\n"; 489 echo "<td>".$etablissement["academie"]["libelle"]."</td>\n"; 490 echo "<td>".$etablissement["sigle"]."</td>\n"; 491 echo "<td>".$etablissement["denom_princ"]."</td>\n"; 492 echo "<td>".$etablissement["denom_compl"]."</td>\n"; 493 echo "<td>".$etablissement["code_nature"]."</td>\n"; 494 echo "<td>".$etablissement["code_categorie"]."</td>\n"; 495 echo "<td>".$etablissement["adresse"]."</td>\n"; 496 echo "<td>".$etablissement["code_postal"]."</td>\n"; 497 echo "<td>".$etablissement["boite_postale"]."</td>\n"; 498 echo "<td>".$etablissement["cedex"]."</td>\n"; 499 echo "<td>".$etablissement["telephone"]."</td>\n"; 500 echo "<td>".$etablissement["statut"]."</td>\n"; 501 echo "<td>".$etablissement["etablissement_sensible"]."</td>\n"; 502 echo "<td>".$etablissement["annee"]["annee"]."</td>\n"; 503 echo "<td>".$etablissement["annee"]["date_debut"]."</td>\n"; 504 echo "<td>".$etablissement["annee"]["date_fin"]."</td>\n"; 505 echo "</tr>\n"; 506 $cpt++; 507 //} 508 echo "</table>\n"; 509 echo "</blockquote>\n"; 510 echo "</blockquote>\n"; 511 512 513 514 515 516 517 518 519 520 521 522 echo "<h2>Matières</h2>\n"; 523 echo "<blockquote>\n"; 524 echo "<h3>Analyse du fichier pour extraire les matières...</h3>\n"; 525 echo "<blockquote>\n"; 526 $cpt=0; 527 $temoin_matieres=0; 528 $matiere=array(); 529 $i=0; 530 $temoin_mat=0; 531 while($cpt<count($ligne)){ 532 //echo htmlentities($ligne[$cpt])."<br />\n"; 533 if(strstr($ligne[$cpt],"<MATIERES>")){ 534 echo "Début de la section MATIERES à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 535 $temoin_matieres++; 536 } 537 if(strstr($ligne[$cpt],"</MATIERES>")){ 538 echo "Fin de la section MATIERES à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 539 $temoin_matieres++; 540 } 541 if($temoin_matieres==1){ 542 // On analyse maintenant matiere par matiere: 543 /* 544 if(strstr($ligne[$cpt],"<MATIERE CODE=")){ 545 $matiere[$i]=array(); 546 unset($tabtmp); 547 //$tabtmp=explode("=",preg_replace("/>/","",preg_replace("/</","",$ligne[$cpt]))); 548 $tabtmp=explode('"',$ligne[$cpt]); 549 $matiere[$i]["code"]=$tabtmp[1]; 550 $temoin_mat=1; 551 } 552 */ 553 if(strstr($ligne[$cpt],"<MATIERE ")){ 554 $matiere[$i]=array(); 555 unset($tabtmp); 556 //$tabtmp=explode("=",preg_replace("/>/","",preg_replace("/</","",$ligne[$cpt]))); 557 $tabtmp=explode('"',strstr($ligne[$cpt]," CODE=")); 558 $matiere[$i]["code"]=$tabtmp[1]; 559 $temoin_mat=1; 560 } 561 if(strstr($ligne[$cpt],"</MATIERE>")){ 562 $temoin_mat=0; 563 $i++; 564 } 565 if($temoin_mat==1){ 566 if(strstr($ligne[$cpt],"<CODE_GESTION>")){ 567 unset($tabtmp); 568 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 569 //$matiere[$i]["code_gestion"]=$tabtmp[2]; 570 $matiere[$i]["code_gestion"]=preg_replace("/[^a-zA-Z0-9&_. -]/","",html_entity_decode($tabtmp[2])); 571 } 572 if(strstr($ligne[$cpt],"<LIBELLE_COURT>")){ 573 unset($tabtmp); 574 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 575 //$matiere[$i]["libelle_court"]=$tabtmp[2]; 576 $matiere[$i]["libelle_court"]=preg_replace("/[^a-zA-Z0-9������������������������������&_. -]/","",html_entity_decode($tabtmp[2])); 577 } 578 if(strstr($ligne[$cpt],"<LIBELLE_LONG>")){ 579 unset($tabtmp); 580 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 581 $matiere[$i]["libelle_long"]=$tabtmp[2]; 582 } 583 if(strstr($ligne[$cpt],"<LIBELLE_EDITION>")){ 584 unset($tabtmp); 585 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 586 $matiere[$i]["libelle_edition"]=$tabtmp[2]; 587 } 588 } 589 } 590 591 $cpt++; 592 } 593 echo "<p>Terminé.</p>\n"; 594 echo "</blockquote>\n"; 595 596 echo "<h3>Affichage des données MATIERES extraites:</h3>\n"; 597 echo "<blockquote>\n"; 598 echo "<table border='1'>\n"; 599 echo "<tr>\n"; 600 echo "<th style='color: blue;'> </th>\n"; 601 echo "<th>Code</th>\n"; 602 echo "<th>Code_gestion</th>\n"; 603 echo "<th>Libelle_court</th>\n"; 604 echo "<th>Libelle_long</th>\n"; 605 echo "<th>Libelle_edition</th>\n"; 606 echo "</tr>\n"; 607 $cpt=0; 608 while($cpt<count($matiere)){ 609 echo "<tr>\n"; 610 echo "<td style='color: blue;'>$cpt</td>\n"; 611 echo "<td>".$matiere[$cpt]["code"]."</td>\n"; 612 echo "<td>".$matiere[$cpt]["code_gestion"]."</td>\n"; 613 echo "<td>".$matiere[$cpt]["libelle_court"]."</td>\n"; 614 echo "<td>".$matiere[$cpt]["libelle_long"]."</td>\n"; 615 echo "<td>".$matiere[$cpt]["libelle_edition"]."</td>\n"; 616 echo "</tr>\n"; 617 $cpt++; 618 } 619 echo "</table>\n"; 620 echo "</blockquote>\n"; 621 echo "</blockquote>\n"; 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 echo "<h2>Civilités</h2>\n"; 637 echo "<blockquote>\n"; 638 echo "<h3>Analyse du fichier pour extraire les civilités...</h3>\n"; 639 echo "<blockquote>\n"; 640 $cpt=0; 641 $temoin_civilites=0; 642 $civilites=array(); 643 $i=0; 644 while($cpt<count($ligne)){ 645 //echo htmlentities($ligne[$cpt])."<br />\n"; 646 if(strstr($ligne[$cpt],"<CIVILITES>")){ 647 echo "Début de la section CIVILITES à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 648 $temoin_civilites++; 649 } 650 if(strstr($ligne[$cpt],"</CIVILITES>")){ 651 echo "Fin de la section CIVILITES à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 652 $temoin_civilites++; 653 } 654 if($temoin_civilites==1){ 655 /* 656 if(strstr($ligne[$cpt],"<CIVILITE CODE=")){ 657 $civilites[$i]=array(); 658 unset($tabtmp); 659 $tabtmp=explode('"',$ligne[$cpt]); 660 $civilites[$i]["code"]=$tabtmp[1]; 661 $temoin_civ=1; 662 } 663 */ 664 if(strstr($ligne[$cpt],"<CIVILITE ")){ 665 $civilites[$i]=array(); 666 unset($tabtmp); 667 $tabtmp=explode('"',strstr($ligne[$cpt]," CODE=")); 668 $civilites[$i]["code"]=$tabtmp[1]; 669 $temoin_civ=1; 670 } 671 if(strstr($ligne[$cpt],"</CIVILITE>")){ 672 $temoin_civ=0; 673 $i++; 674 } 675 if($temoin_civ==1){ 676 if(strstr($ligne[$cpt],"<LIBELLE_COURT>")){ 677 unset($tabtmp); 678 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 679 $civilites[$i]["libelle_court"]=$tabtmp[2]; 680 } 681 if(strstr($ligne[$cpt],"<LIBELLE_LONG>")){ 682 unset($tabtmp); 683 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 684 $civilites[$i]["libelle_long"]=$tabtmp[2]; 685 } 686 } 687 } 688 $cpt++; 689 } 690 echo "<p>Terminé.</p>\n"; 691 echo "</blockquote>\n"; 692 693 echo "<h3>Affichage des données CIVILITES extraites:</h3>\n"; 694 echo "<blockquote>\n"; 695 echo "<table border='1'>\n"; 696 echo "<tr>\n"; 697 echo "<th style='color: blue;'> </th>\n"; 698 echo "<th>Code</th>\n"; 699 echo "<th>Libelle_court</th>\n"; 700 echo "<th>Libelle_long</th>\n"; 701 echo "</tr>\n"; 702 $cpt=0; 703 while($cpt<count($civilites)){ 704 echo "<tr>\n"; 705 echo "<td style='color: blue;'>$cpt</td>\n"; 706 echo "<td>".$civilites[$cpt]["code"]."</td>\n"; 707 echo "<td>".$civilites[$cpt]["libelle_court"]."</td>\n"; 708 echo "<td>".$civilites[$cpt]["libelle_long"]."</td>\n"; 709 echo "</tr>\n"; 710 $cpt++; 711 } 712 echo "</table>\n"; 713 echo "</blockquote>\n"; 714 echo "</blockquote>\n"; 715 716 717 718 719 720 721 722 723 724 725 echo "<h2>Personnels</h2>\n"; 726 echo "<blockquote>\n"; 727 echo "<h3>Analyse du fichier pour extraire les professeurs,...</h3>\n"; 728 echo "<blockquote>\n"; 729 $cpt=0; 730 $temoin_professeurs=0; 731 $prof=array(); 732 $i=0; 733 $temoin_prof=0; 734 while($cpt<count($ligne)){ 735 //echo htmlentities($ligne[$cpt])."<br />\n"; 736 if(strstr($ligne[$cpt],"<INDIVIDUS>")){ 737 echo "Début de la section INDIVIDUS à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 738 $temoin_professeurs++; 739 } 740 if(strstr($ligne[$cpt],"</INDIVIDUS>")){ 741 echo "Fin de la section INDIVIDUS à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 742 $temoin_professeurs++; 743 } 744 if($temoin_professeurs==1){ 745 // On analyse maintenant matiere par matiere: 746 /* 747 if(strstr($ligne[$cpt],"<INDIVIDU ID=")){ 748 $prof[$i]=array(); 749 unset($tabtmp); 750 $tabtmp=explode('"',$ligne[$cpt]); 751 $prof[$i]["id"]=$tabtmp[1]; 752 $prof[$i]["type"]=$tabtmp[3]; 753 $temoin_prof=1; 754 } 755 */ 756 if(strstr($ligne[$cpt],"<INDIVIDU ")){ 757 $prof[$i]=array(); 758 unset($tabtmp); 759 $tabtmp=explode('"',strstr($ligne[$cpt]," ID=")); 760 $prof[$i]["id"]=$tabtmp[1]; 761 $tabtmp=explode('"',strstr($ligne[$cpt]," TYPE=")); 762 $prof[$i]["type"]=$tabtmp[1]; 763 $temoin_prof=1; 764 } 765 if(strstr($ligne[$cpt],"</INDIVIDU>")){ 766 $temoin_prof=0; 767 $i++; 768 } 769 if($temoin_prof==1){ 770 if(strstr($ligne[$cpt],"<SEXE>")){ 771 unset($tabtmp); 772 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 773 //$prof[$i]["sexe"]=$tabtmp[2]; 774 $prof[$i]["sexe"]=preg_replace("/[^1-2]/","",$tabtmp[2]); 775 } 776 if(strstr($ligne[$cpt],"<CIVILITE>")){ 777 unset($tabtmp); 778 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 779 //$prof[$i]["civilite"]=$tabtmp[2]; 780 $prof[$i]["civilite"]=preg_replace("/[^1-3]/","",$tabtmp[2]); 781 } 782 if(strstr($ligne[$cpt],"<NOM_USAGE>")){ 783 unset($tabtmp); 784 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 785 //$prof[$i]["nom_usage"]=$tabtmp[2]; 786 $prof[$i]["nom_usage"]=preg_replace("/[^a-zA-Z -]/","",$tabtmp[2]); 787 } 788 if(strstr($ligne[$cpt],"<NOM_PATRONYMIQUE>")){ 789 unset($tabtmp); 790 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 791 //$prof[$i]["nom_patronymique"]=$tabtmp[2]; 792 $prof[$i]["nom_patronymique"]=preg_replace("/[^a-zA-Z -]/","",$tabtmp[2]); 793 } 794 if(strstr($ligne[$cpt],"<PRENOM>")){ 795 unset($tabtmp); 796 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 797 //$prof[$i]["prenom"]=$tabtmp[2]; 798 $prof[$i]["prenom"]=preg_replace("/[^a-zA-Z0-9������������������������������_. -]/","",$tabtmp[2]); 799 } 800 if(strstr($ligne[$cpt],"<DATE_NAISSANCE>")){ 801 unset($tabtmp); 802 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 803 //$prof[$i]["date_naissance"]=$tabtmp[2]; 804 $prof[$i]["date_naissance"]=preg_replace("/[^0-9-]/","",$tabtmp[2]); 805 } 806 if(strstr($ligne[$cpt],"<GRADE>")){ 807 unset($tabtmp); 808 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 809 $prof[$i]["grade"]=$tabtmp[2]; 810 } 811 if(strstr($ligne[$cpt],"<FONCTION>")){ 812 unset($tabtmp); 813 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 814 $prof[$i]["fonction"]=$tabtmp[2]; 815 } 816 817 818 819 if(strstr($ligne[$cpt],"<PROFS_PRINC>")){ 820 $temoin_profs_princ=1; 821 //$prof[$i]["prof_princs"]=array(); 822 $j=0; 823 } 824 if(strstr($ligne[$cpt],"</PROFS_PRINC>")){ 825 $temoin_profs_princ=0; 826 } 827 828 if($temoin_profs_princ==1){ 829 830 if(strstr($ligne[$cpt],"<PROF_PRINC>")){ 831 $temoin_prof_princ=1; 832 $prof[$i]["prof_princ"]=array(); 833 } 834 if(strstr($ligne[$cpt],"</PROF_PRINC>")){ 835 $temoin_prof_princ=0; 836 $j++; 837 } 838 839 if($temoin_prof_princ==1){ 840 if(strstr($ligne[$cpt],"<CODE_STRUCTURE>")){ 841 unset($tabtmp); 842 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 843 $prof[$i]["prof_princ"][$j]["code_structure"]=$tabtmp[2]; 844 $temoin_au_moins_un_prof_princ="oui"; 845 } 846 847 if(strstr($ligne[$cpt],"<DATE_DEBUT>")){ 848 unset($tabtmp); 849 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 850 $prof[$i]["prof_princ"][$j]["date_debut"]=$tabtmp[2]; 851 } 852 if(strstr($ligne[$cpt],"<DATE_FIN>")){ 853 unset($tabtmp); 854 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 855 $prof[$i]["prof_princ"][$j]["date_fin"]=$tabtmp[2]; 856 } 857 } 858 } 859 860 861 862 863 if(strstr($ligne[$cpt],"<DISCIPLINES>")){ 864 $temoin_disciplines=1; 865 $prof[$i]["disciplines"]=array(); 866 $j=0; 867 } 868 if(strstr($ligne[$cpt],"</DISCIPLINES>")){ 869 $temoin_disciplines=0; 870 } 871 872 873 874 if($temoin_disciplines==1){ 875 /* 876 if(strstr($ligne[$cpt],"<DISCIPLINE CODE=")){ 877 $temoin_disc=1; 878 unset($tabtmp); 879 $tabtmp=explode('"',$ligne[$cpt]); 880 $prof[$i]["disciplines"][$j]["code"]=$tabtmp[1]; 881 } 882 */ 883 if(strstr($ligne[$cpt],"<DISCIPLINE ")){ 884 $temoin_disc=1; 885 unset($tabtmp); 886 $tabtmp=explode('"',strstr($ligne[$cpt]," CODE=")); 887 $prof[$i]["disciplines"][$j]["code"]=$tabtmp[1]; 888 } 889 if(strstr($ligne[$cpt],"</DISCIPLINE>")){ 890 $temoin_disc=0; 891 $j++; 892 } 893 894 if($temoin_disc==1){ 895 if(strstr($ligne[$cpt],"<LIBELLE_COURT>")){ 896 unset($tabtmp); 897 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 898 $prof[$i]["disciplines"][$j]["libelle_court"]=$tabtmp[2]; 899 } 900 if(strstr($ligne[$cpt],"<NB_HEURES>")){ 901 unset($tabtmp); 902 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 903 $prof[$i]["disciplines"][$j]["nb_heures"]=$tabtmp[2]; 904 } 905 } 906 } 907 908 909 } 910 } 911 912 913 914 // On va recuperer les divisions et associations profs/matieres... 915 if(strstr($ligne[$cpt],"<STRUCTURE>")){ 916 echo "Début de la section STRUCTURE à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 917 $temoin_structure++; 918 } 919 if(strstr($ligne[$cpt],"</STRUCTURE>")){ 920 echo "Fin de la section STRUCTURE à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 921 $temoin_structure++; 922 } 923 if($temoin_structure==1){ 924 if(strstr($ligne[$cpt],"<DIVISIONS>")){ 925 echo "Début de la section DIVISIONS à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 926 $temoin_divisions++; 927 $divisions=array(); 928 $i=0; 929 } 930 if(strstr($ligne[$cpt],"</DIVISIONS>")){ 931 echo "Fin de la section DIVISIONS à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 932 $temoin_divisions++; 933 } 934 if($temoin_divisions==1){ 935 /* 936 if(strstr($ligne[$cpt],"<DIVISION CODE=")){ 937 $temoin_div=1; 938 unset($tabtmp); 939 $tabtmp=explode('"',$ligne[$cpt]); 940 $divisions[$i]["code"]=$tabtmp[1]; 941 } 942 */ 943 if(strstr($ligne[$cpt],"<DIVISION ")){ 944 $temoin_div=1; 945 unset($tabtmp); 946 $tabtmp=explode('"',strstr($ligne[$cpt]," CODE=")); 947 $divisions[$i]["code"]=$tabtmp[1]; 948 } 949 if(strstr($ligne[$cpt],"</DIVISION>")){ 950 $temoin_div=0; 951 $i++; 952 } 953 954 if($temoin_div==1){ 955 if(strstr($ligne[$cpt],"<SERVICES>")){ 956 $temoin_services=1; 957 $j=0; 958 } 959 if(strstr($ligne[$cpt],"</SERVICES>")){ 960 $temoin_services=0; 961 } 962 963 if($temoin_services==1){ 964 /* 965 if(strstr($ligne[$cpt],"<SERVICE CODE_MATIERE=")){ 966 $temoin_disc=1; 967 unset($tabtmp); 968 $tabtmp=explode('"',$ligne[$cpt]); 969 $divisions[$i]["services"][$j]["code_matiere"]=$tabtmp[1]; 970 } 971 */ 972 if(strstr($ligne[$cpt],"<SERVICE ")){ 973 $temoin_disc=1; 974 unset($tabtmp); 975 $tabtmp=explode('"',strstr($ligne[$cpt]," CODE_MATIERE=")); 976 $divisions[$i]["services"][$j]["code_matiere"]=$tabtmp[1]; 977 } 978 if(strstr($ligne[$cpt],"</SERVICE>")){ 979 $temoin_disc=0; 980 $j++; 981 } 982 983 if($temoin_disc==1){ 984 if(strstr($ligne[$cpt],"<ENSEIGNANTS>")){ 985 $temoin_enseignants=1; 986 $divisions[$i]["services"][$j]["enseignants"]=array(); 987 $k=0; 988 } 989 if(strstr($ligne[$cpt],"</ENSEIGNANTS>")){ 990 $temoin_enseignants=0; 991 } 992 if($temoin_enseignants==1){ 993 /* 994 if(strstr($ligne[$cpt],"<ENSEIGNANT ID=")){ 995 //$temoin_ens=1; 996 unset($tabtmp); 997 $tabtmp=explode('"',$ligne[$cpt]); 998 $divisions[$i]["services"][$j]["enseignants"][$k]["id"]=$tabtmp[1]; 999 } 1000 */ 1001 if(strstr($ligne[$cpt],"<ENSEIGNANT ")){ 1002 //$temoin_ens=1; 1003 unset($tabtmp); 1004 $tabtmp=explode('"',strstr($ligne[$cpt]," ID=")); 1005 $divisions[$i]["services"][$j]["enseignants"][$k]["id"]=$tabtmp[1]; 1006 } 1007 if(strstr($ligne[$cpt],"</ENSEIGNANT>")){ 1008 //$temoin_ens=0; 1009 $k++; 1010 } 1011 } 1012 } 1013 } 1014 } 1015 } 1016 1017 1018 1019 1020 1021 1022 if(strstr($ligne[$cpt],"<GROUPES>")){ 1023 echo "Début de la section GROUPES à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 1024 $temoin_groupes++; 1025 $groupes=array(); 1026 $i=0; 1027 } 1028 if(strstr($ligne[$cpt],"</GROUPES>")){ 1029 echo "Fin de la section GROUPES à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 1030 $temoin_groupes++; 1031 } 1032 if($temoin_groupes==1){ 1033 /* 1034 if(strstr($ligne[$cpt],"<GROUPE CODE=")){ 1035 $temoin_grp=1; 1036 unset($tabtmp); 1037 $tabtmp=explode('"',$ligne[$cpt]); 1038 $groupes[$i]=array(); 1039 $groupes[$i]["code"]=$tabtmp[1]; 1040 $j=0; 1041 $m=0; 1042 } 1043 */ 1044 if(strstr($ligne[$cpt],"<GROUPE ")){ 1045 $temoin_grp=1; 1046 unset($tabtmp); 1047 $tabtmp=explode('"',strstr($ligne[$cpt]," CODE=")); 1048 $groupes[$i]=array(); 1049 $groupes[$i]["code"]=$tabtmp[1]; 1050 $j=0; 1051 $m=0; 1052 } 1053 if(strstr($ligne[$cpt],"</GROUPE>")){ 1054 $temoin_grp=0; 1055 $i++; 1056 } 1057 1058 if($temoin_grp==1){ 1059 if(strstr($ligne[$cpt],"<LIBELLE_LONG>")){ 1060 unset($tabtmp); 1061 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 1062 $groupes[$i]["libelle_long"]=$tabtmp[2]; 1063 } 1064 1065 if(strstr($ligne[$cpt],"<DIVISIONS_APPARTENANCE>")){ 1066 $temoin_div_appart=1; 1067 } 1068 if(strstr($ligne[$cpt],"</DIVISIONS_APPARTENANCE>")){ 1069 $temoin_div_appart=0; 1070 } 1071 1072 if($temoin_div_appart==1){ 1073 /* 1074 if(strstr($ligne[$cpt],"<DIVISION_APPARTENANCE CODE=")){ 1075 unset($tabtmp); 1076 $tabtmp=explode('"',$ligne[$cpt]); 1077 $groupes[$i]["divisions"][$j]["code"]=$tabtmp[1]; 1078 $j++; 1079 } 1080 */ 1081 if(strstr($ligne[$cpt],"<DIVISION_APPARTENANCE ")){ 1082 unset($tabtmp); 1083 $tabtmp=explode('"',strstr($ligne[$cpt]," CODE=")); 1084 $groupes[$i]["divisions"][$j]["code"]=$tabtmp[1]; 1085 $j++; 1086 } 1087 } 1088 1089 1090 //<SERVICE CODE_MATIERE="020100" CODE_MOD_COURS="CG"> 1091 /* 1092 if(strstr($ligne[$cpt],"<SERVICE CODE_MATIERE=")){ 1093 unset($tabtmp); 1094 $tabtmp=explode('"',$ligne[$cpt]); 1095 $groupes[$i]["code_matiere"]=$tabtmp[1]; 1096 } 1097 */ 1098 if(strstr($ligne[$cpt],"<SERVICE ")){ 1099 unset($tabtmp); 1100 $tabtmp=explode('"',strstr($ligne[$cpt]," CODE_MATIERE=")); 1101 $groupes[$i]["code_matiere"]=$tabtmp[1]; 1102 } 1103 1104 1105 //<ENSEIGNANT TYPE="epp" ID="31762"> 1106 // Ameliorer la recup de l'attribut ID... 1107 // ...decouper en un tableau avec ' ' 1108 // et rechercher quel champ du tableau commence par ID= 1109 1110 //<ENSEIGNANT ID="11508" TYPE="epp"> 1111 1112 //if(strstr($ligne[$cpt],"<ENSEIGNANT TYPE=")){ 1113 /* 1114 if(strstr($ligne[$cpt],"<ENSEIGNANT ID=")){ 1115 unset($tabtmp); 1116 $tabtmp=explode('"',$ligne[$cpt]); 1117 //$groupes[$i]["enseignant"][$m]["id"]=$tabtmp[3]; 1118 $groupes[$i]["enseignant"][$m]["id"]=$tabtmp[1]; 1119 $m++; 1120 } 1121 */ 1122 if(strstr($ligne[$cpt],"<ENSEIGNANT ")){ 1123 unset($tabtmp); 1124 $tabtmp=explode('"',strstr($ligne[$cpt]," ID=")); 1125 //$groupes[$i]["enseignant"][$m]["id"]=$tabtmp[3]; 1126 $groupes[$i]["enseignant"][$m]["id"]=$tabtmp[1]; 1127 $m++; 1128 } 1129 1130 } 1131 } 1132 1133 } 1134 1135 $cpt++; 1136 } 1137 echo "<p>Terminé.</p>\n"; 1138 echo "</blockquote>\n"; 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 /* 1152 echo "<h2>Programmes</h2>\n"; 1153 echo "<blockquote>\n"; 1154 echo "<h3>Analyse du fichier pour extraire les programmes...</h3>\n"; 1155 echo "<blockquote>\n"; 1156 echo "<p>Il s'agit ici de remplir un tableau des liens entre les MEFS et les MATIERES.</p>\n"; 1157 $cpt=0; 1158 $temoin_programmes=0; 1159 $programme=array(); 1160 $i=0; 1161 $temoin_mat=0; 1162 while($cpt<count($ligne)){ 1163 //echo htmlentities($ligne[$cpt])."<br />\n"; 1164 if(strstr($ligne[$cpt],"<PROGRAMMES>")){ 1165 echo "Début de la section PROGRAMMES à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 1166 $temoin_programmes++; 1167 } 1168 if(strstr($ligne[$cpt],"</PROGRAMMES>")){ 1169 echo "Fin de la section PROGRAMMES à la ligne <span style='color: blue;'>$cpt</span><br />\n"; 1170 $temoin_programmes++; 1171 } 1172 if($temoin_programmes==1){ 1173 // On analyse maintenant matiere par matiere: 1174 if(strstr($ligne[$cpt],"<PROGRAMME>")){ 1175 $programme[$i]=array(); 1176 $temoin_prog=1; 1177 } 1178 if(strstr($ligne[$cpt],"</PROGRAMME>")){ 1179 $temoin_prog=0; 1180 $i++; 1181 } 1182 if($temoin_prog==1){ 1183 if(strstr($ligne[$cpt],"<CODE_MEF>")){ 1184 unset($tabtmp); 1185 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 1186 $programme[$i]["code_mef"]=$tabtmp[2]; 1187 } 1188 if(strstr($ligne[$cpt],"<CODE_MATIERE>")){ 1189 unset($tabtmp); 1190 $tabtmp=explode(">",preg_replace("/</",">",$ligne[$cpt])); 1191 $programme[$i]["code_matiere"]=$tabtmp[2]; 1192 } 1193 } 1194 } 1195 1196 $cpt++; 1197 } 1198 echo "<p>Terminé.</p>\n"; 1199 echo "</blockquote>\n"; 1200 */ 1201 1202 1203 1204 1205 1206 echo "<h3>Affichage des données PROFS,... extraites:</h3>\n"; 1207 echo "<blockquote>\n"; 1208 echo "<table border='1'>\n"; 1209 echo "<tr>\n"; 1210 echo "<th style='color: blue;'> </th>\n"; 1211 echo "<th>Id</th>\n"; 1212 echo "<th>Type</th>\n"; 1213 echo "<th>Sexe</th>\n"; 1214 echo "<th>Civilite</th>\n"; 1215 echo "<th>Nom_usage</th>\n"; 1216 echo "<th>Nom_patronymique</th>\n"; 1217 echo "<th>Prenom</th>\n"; 1218 echo "<th>Date_naissance</th>\n"; 1219 echo "<th>Grade</th>\n"; 1220 echo "<th>Fonction</th>\n"; 1221 echo "<th>Disciplines</th>\n"; 1222 echo "</tr>\n"; 1223 $cpt=0; 1224 while($cpt<count($prof)){ 1225 echo "<tr>\n"; 1226 echo "<td style='color: blue;'>$cpt</td>\n"; 1227 echo "<td>".$prof[$cpt]["id"]."</td>\n"; 1228 echo "<td>".$prof[$cpt]["type"]."</td>\n"; 1229 echo "<td>".$prof[$cpt]["sexe"]."</td>\n"; 1230 echo "<td>".$prof[$cpt]["civilite"]."</td>\n"; 1231 echo "<td>".$prof[$cpt]["nom_usage"]."</td>\n"; 1232 echo "<td>".$prof[$cpt]["nom_patronymique"]."</td>\n"; 1233 echo "<td>".$prof[$cpt]["prenom"]."</td>\n"; 1234 echo "<td>".$prof[$cpt]["date_naissance"]."</td>\n"; 1235 echo "<td>".$prof[$cpt]["grade"]."</td>\n"; 1236 echo "<td>".$prof[$cpt]["fonction"]."</td>\n"; 1237 1238 echo "<td align='center'>\n"; 1239 1240 if($prof[$cpt]["fonction"]=="ENS"){ 1241 echo "<table border='1'>\n"; 1242 echo "<tr>\n"; 1243 echo "<th>Code</th>\n"; 1244 echo "<th>Libelle_court</th>\n"; 1245 echo "<th>Nb_heures</th>\n"; 1246 echo "</tr>\n"; 1247 for($j=0;$j<count($prof[$cpt]["disciplines"]);$j++){ 1248 echo "<tr>\n"; 1249 echo "<td>".$prof[$cpt]["disciplines"][$j]["code"]."</td>\n"; 1250 echo "<td>".$prof[$cpt]["disciplines"][$j]["libelle_court"]."</td>\n"; 1251 echo "<td>".$prof[$cpt]["disciplines"][$j]["nb_heures"]."</td>\n"; 1252 echo "</tr>\n"; 1253 } 1254 echo "</table>\n"; 1255 } 1256 1257 echo "</td>\n"; 1258 echo "</tr>\n"; 1259 $cpt++; 1260 } 1261 echo "</table>\n"; 1262 echo "</blockquote>\n"; 1263 1264 echo "<p style='color:red;'><b>A faire</b>: un fichier profs pour GEPI...</p>\n"; 1265 1266 1267 1268 1269 1270 1271 $temoin_au_moins_une_matiere=""; 1272 $temoin_au_moins_un_prof=""; 1273 // Affichage des infos Enseignements et divisions: 1274 echo "<a name='divisions'></a><h3>Affichage des divisions</h3>\n"; 1275 echo "<blockquote>\n"; 1276 for($i=0;$i<count($divisions);$i++){ 1277 //echo "<p>\$divisions[$i][\"code\"]=".$divisions[$i]["code"]."<br />\n"; 1278 echo "<h4>Classe de ".$divisions[$i]["code"]."</h4>\n"; 1279 echo "<ul>\n"; 1280 for($j=0;$j<count($divisions[$i]["services"]);$j++){ 1281 //echo "\$divisions[$i][\"services\"][$j][\"code_matiere\"]=".$divisions[$i]["services"][$j]["code_matiere"]."<br />\n"; 1282 echo "<li>\n"; 1283 for($m=0;$m<count($matiere);$m++){ 1284 if($matiere[$m]["code"]==$divisions[$i]["services"][$j]["code_matiere"]){ 1285 //echo "\$matiere[$m][\"code_gestion\"]=".$matiere[$m]["code_gestion"]."<br />\n"; 1286 echo "Matière: ".$matiere[$m]["code_gestion"]."<br />\n"; 1287 $temoin_au_moins_une_matiere="oui"; 1288 } 1289 } 1290 echo "<ul>\n"; 1291 for($k=0;$k<count($divisions[$i]["services"][$j]["enseignants"]);$k++){ 1292 //$divisions[$i]["services"][$j]["enseignants"][$k]["id"] 1293 for($m=0;$m<count($prof);$m++){ 1294 if($prof[$m]["id"]==$divisions[$i]["services"][$j]["enseignants"][$k]["id"]){ 1295 //echo $prof[$m]["nom_usage"]." ".$prof[$m]["prenom"]."|"; 1296 echo "<li>\n"; 1297 echo "Enseignant: ".$prof[$m]["nom_usage"]." ".$prof[$m]["prenom"]; 1298 echo "</li>\n"; 1299 $temoin_au_moins_un_prof="oui"; 1300 } 1301 } 1302 } 1303 echo "</ul>\n"; 1304 //echo "<br />\n"; 1305 echo "</li>\n"; 1306 } 1307 echo "</ul>\n"; 1308 //echo "</p>\n"; 1309 } 1310 echo "</blockquote>\n"; 1311 echo "</blockquote>\n"; 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 echo "<h2>Suppression des CSV de SE3 existants</h2>\n"; 1324 echo "<blockquote>\n"; 1325 echo "<p>Si des fichiers CSV ont déjà été générés, on va commencer par les supprimer avant d'en générer de nouveaux...</p>\n"; 1326 //$tabfich=array("f_wind.csv","f_men.csv","f_gpd.csv","f_div.csv","f_tmt.csv","profs.html"); 1327 $tabfich=array("f_wind.csv","f_men.csv","f_gpd.csv","f_div.csv","f_tmt.csv","profs.html","f_wind.txt","f_men.txt","f_div.txt"); 1328 for($i=0;$i<count($tabfich);$i++){ 1329 if(file_exists("$dossiercsv/se3/$tabfich[$i]")){ 1330 echo "<p>Suppression de se3/$tabfich[$i]... "; 1331 if(unlink("$dossiercsv/se3/$tabfich[$i]")){ 1332 echo "réussie.</p>\n"; 1333 } 1334 else{ 1335 echo "<font color='red'>Echec!</font> Vérifiez les droits d'écriture sur le serveur.</p>\n"; 1336 } 1337 } 1338 } 1339 echo "<p>Terminé.</p>\n"; 1340 echo "</blockquote>\n"; 1341 1342 1343 1344 echo "<a name='se3'></a><h2>Génération du CSV (F_WIND.txt) des profs pour SE3</h2>\n"; 1345 echo "<blockquote>\n"; 1346 $cpt=0; 1347 if($temoin_creation_fichiers!="non"){$fich=fopen("$dossiercsv/se3/f_wind.txt","w+");} 1348 while($cpt<count($prof)){ 1349 if($prof[$cpt]["fonction"]=="ENS"){ 1350 $date=str_replace("-","",$prof[$cpt]["date_naissance"]); 1351 $chaine="P".$prof[$cpt]["id"]."|".$prof[$cpt]["nom_usage"]."|".$prof[$cpt]["prenom"]."|".$date."|".$prof[$cpt]["sexe"]; 1352 if($fich){ 1353 //fwrite($fich,$chaine."\n"); 1354 fwrite($fich,html_entity_decode($chaine)."\n"); 1355 } 1356 echo $chaine."<br />\n"; 1357 //echo "P".$prof[$cpt]["id"]."|".$prof[$cpt]["nom_usage"]."|".$prof[$cpt]["prenom"]."|".$date."|".$prof[$cpt]["sexe"]."<br />\n"; 1358 } 1359 $cpt++; 1360 } 1361 if($temoin_creation_fichiers!="non"){fclose($fich);} 1362 echo "<p>Vous pouvez copier/coller ces lignes dans un fichier texte pour effectuer l'import des comptes profs dans SambaEdu3.</p>\n"; 1363 echo "</blockquote>\n"; 1364 1365 1366 1367 1368 echo "<a name='f_div'></a><h2>Génération d'un CSV du F_DIV pour SambaEdu3</h2>\n"; 1369 echo "<blockquote>\n"; 1370 if($temoin_creation_fichiers!="non"){$fich=fopen("$dossiercsv/se3/f_div.txt","w+");} 1371 for($i=0;$i<count($divisions);$i++){ 1372 $numind_pp=""; 1373 for($m=0;$m<count($prof);$m++){ 1374 for($n=0;$n<count($prof[$m]["prof_princ"]);$n++){ 1375 if($prof[$m]["prof_princ"][$n]["code_structure"]==$divisions[$i]["code"]){ 1376 $numind_pp="P".$prof[$m]["id"]; 1377 } 1378 } 1379 } 1380 $chaine=$divisions[$i]["code"]."|".$divisions[$i]["code"]."|".$numind_pp; 1381 if($fich){ 1382 //fwrite($fich,$chaine."\n"); 1383 fwrite($fich,html_entity_decode($chaine)."\n"); 1384 } 1385 echo $chaine."<br />\n"; 1386 //echo $divisions[$i]["code"]."|".$divisions[$i]["code"]."|".$numind_pp."<br />\n"; 1387 } 1388 if($temoin_creation_fichiers!="non"){fclose($fich);} 1389 if($temoin_au_moins_un_prof_princ!="oui"){ 1390 echo "<p>Il semble que votre fichier ne comporte pas l'information suivante:<br />Qui sont les profs principaux?<br />Cela n'empêche cependant pas l'import du CSV dans SambaEdu3.</p>\n"; 1391 } 1392 echo "</blockquote>\n"; 1393 1394 1395 1396 1397 echo "<a name='f_men'></a><h2>Génération d'un CSV du F_MEN pour SambaEdu3</h2>\n"; 1398 echo "<blockquote>\n"; 1399 if(($temoin_au_moins_une_matiere=="")||($temoin_au_moins_un_prof=="")){ 1400 echo "<p>Votre fichier ne comporte pas suffisamment d'informations pour générer ce CSV.<br />Il faut que les emplois du temps soient remontés vers STS pour que le fichier XML permette de générer ce CSV.</p>\n"; 1401 } 1402 else{ 1403 if($temoin_creation_fichiers!="non"){$fich=fopen("$dossiercsv/se3/f_men.txt","w+");} 1404 for($i=0;$i<count($divisions);$i++){ 1405 //$divisions[$i]["services"][$j]["code_matiere"] 1406 $classe=$divisions[$i]["code"]; 1407 for($j=0;$j<count($divisions[$i]["services"]);$j++){ 1408 $mat=""; 1409 for($m=0;$m<count($matiere);$m++){ 1410 if($matiere[$m]["code"]==$divisions[$i]["services"][$j]["code_matiere"]){ 1411 $mat=$matiere[$m]["code_gestion"]; 1412 } 1413 } 1414 if($mat!=""){ 1415 for($k=0;$k<count($divisions[$i]["services"][$j]["enseignants"]);$k++){ 1416 $chaine=$mat."|".$classe."|P".$divisions[$i]["services"][$j]["enseignants"][$k]["id"]; 1417 if($fich){ 1418 //fwrite($fich,$chaine."\n"); 1419 fwrite($fich,html_entity_decode($chaine)."\n"); 1420 } 1421 echo $chaine."<br />\n"; 1422 //echo $mat."|".$classe."|P".$divisions[$i]["services"][$j]["enseignants"][$k]["id"]."<br />\n"; 1423 } 1424 } 1425 } 1426 } 1427 if($temoin_creation_fichiers!="non"){fclose($fich);} 1428 } 1429 echo "</blockquote>\n"; 1430 1431 //================================================================== 1432 1433 echo "<h2>Suppression des CSV de GEPI existants</h2>\n"; 1434 echo "<blockquote>\n"; 1435 echo "<p>Si des fichiers CSV ont déjà été générés, on va commencer par les supprimer avant d'en générer de nouveaux...</p>\n"; 1436 $tabfich=array("f_wind.csv","f_men.csv","f_gpd.csv","f_div.csv","f_tmt.csv","profs.html"); 1437 for($i=0;$i<count($tabfich);$i++){ 1438 if(file_exists("$dossiercsv/gepi/$tabfich[$i]")){ 1439 echo "<p>Suppression de gepi/$tabfich[$i]... "; 1440 if(unlink("$dossiercsv/gepi/$tabfich[$i]")){ 1441 echo "réussie.</p>\n"; 1442 } 1443 else{ 1444 echo "<font color='red'>Echec!</font> Vérifiez les droits d'écriture sur le serveur.</p>\n"; 1445 } 1446 } 1447 } 1448 echo "<p>Terminé.</p>\n"; 1449 echo "</blockquote>\n"; 1450 1451 1452 1453 echo "<a name='gepi'></a>\n"; 1454 1455 echo "<a name='f_wind_gepi'></a><h2>Génération du CSV (F_WIND.CSV) des profs pour GEPI</h2>\n"; 1456 echo "<blockquote>\n"; 1457 $cpt=0; 1458 if($temoin_creation_fichiers!="non"){$fich=fopen("$dossiercsv/gepi/f_wind.csv","w+");} 1459 $chaine="AINOMU;AIPREN;AICIVI;NUMIND;FONCCO;INDNNI"; 1460 if($fich){ 1461 //fwrite($fich,$chaine."\n"); 1462 fwrite($fich,html_entity_decode($chaine)."\n"); 1463 } 1464 echo $chaine."<br />\n"; 1465 1466 if($temoin_creation_fichiers!="non"){ 1467 if($_POST['mdp']=="alea"){ 1468 $fich2=fopen("$dossiercsv/gepi/profs.html","w+"); 1469 fwrite($fich2,"<?php 1470 @set_time_limit(0); 1471 1472 // Initialisations files 1473 require_once('../lib/initialisations.inc.php'); 1474 1475 // Resume session 1476 \$resultat_session = resumeSession(); 1477 if (\$resultat_session == 'c') { 1478 header('Location: ../utilisateurs/mon_compte.php?change_mdp=yes'); 1479 die(); 1480 } else if (\$resultat_session == '0') { 1481 header('Location: ../logout.php?auto=1'); 1482 die(); 1483 }; 1484 1485 if (!checkAccess()) { 1486 header('Location: ../logout.php?auto=1'); 1487 die(); 1488 } 1489 ?> 1490 <!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'> 1491 <html> 1492 <head> 1493 <title>Fichier profs</title> 1494 <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1' /> 1495 <meta name='author' content='Stephane Boireau, A.S. RUE de Bernay/Pont-Audemer' /> 1496 <link type='text/css' rel='stylesheet' href='../../style.css' /> 1497 </head> 1498 <body> 1499 <h1 align='center'>Fichier des mots de passe initiaux des professeurs</h1> 1500 <table border='1'> 1501 <tr> 1502 <th>Nom</th> 1503 <th>Prénom</th> 1504 <th>Civilité</th> 1505 <th>Mot de passe</th> 1506 </tr>\n"); 1507 } 1508 } 1509 1510 while($cpt<count($prof)){ 1511 if($prof[$cpt]["fonction"]=="ENS"){ 1512 1513 if($prof[$cpt]["sexe"]=="1"){ 1514 $civi="M."; 1515 } 1516 else{ 1517 $civi="MM"; 1518 } 1519 1520 switch($prof[$cpt]["civilite"]){ 1521 case 1: 1522 $civi="M."; 1523 break; 1524 case 2: 1525 $civi="MM"; 1526 break; 1527 case 3: 1528 $civi="ML"; 1529 break; 1530 } 1531 1532 if($_POST['mdp']=="alea"){ 1533 $mdp=createRandomPassword(); 1534 } 1535 else{ 1536 $date=str_replace("-","",$prof[$cpt]["date_naissance"]); 1537 $mdp=$date; 1538 } 1539 //echo $prof[$cpt]["nom_usage"].";".$prof[$cpt]["prenom"].";".$civi.";"."P".$prof[$cpt]["id"].";"."ENS".";".$date."<br />\n"; 1540 $chaine=$prof[$cpt]["nom_usage"].";".$prof[$cpt]["prenom"].";".$civi.";"."P".$prof[$cpt]["id"].";"."ENS".";".$mdp; 1541 if($fich){ 1542 fwrite($fich,html_entity_decode($chaine)."\n"); 1543 } 1544 if($_POST['mdp']=="alea"){ 1545 fwrite($fich2,"<tr> 1546 <td>".$prof[$cpt]["nom_usage"]."</td> 1547 <td>".$prof[$cpt]["prenom"]."</td> 1548 <td>$civi</td> 1549 <td>$mdp</td> 1550 </tr>\n"); 1551 } 1552 echo $chaine."<br />\n"; 1553 } 1554 $cpt++; 1555 } 1556 if($temoin_creation_fichiers!="non"){fclose($fich);} 1557 if($temoin_creation_fichiers!="non"){ 1558 if($_POST['mdp']=="alea"){ 1559 fwrite($fich2,"</table> 1560 <p>Imprimez cette page, puis supprimez-la en procédant au nettoyage comme indiqué à la page précédente.</p> 1561 </body> 1562 </html>\n"); 1563 fclose($fich2); 1564 } 1565 } 1566 echo "</blockquote>\n"; 1567 1568 1569 1570 echo "<a name='f_men_gepi'></a><h2>Génération d'un CSV du F_MEN pour GEPI</h2>\n"; 1571 echo "<blockquote>\n"; 1572 if(($temoin_au_moins_une_matiere=="")||($temoin_au_moins_un_prof=="")){ 1573 echo "<p>Votre fichier ne comporte pas suffisamment d'informations pour générer ce CSV.<br />Il faut que les emplois du temps soient remontés vers STS pour que le fichier XML permette de générer ce CSV.</p>\n"; 1574 } 1575 else{ 1576 if($temoin_creation_fichiers!="non"){$fich=fopen("$dossiercsv/gepi/f_men.csv","w+");} 1577 $chaine="MATIMN;NUMIND;ELSTCO"; 1578 if($fich){ 1579 fwrite($fich,html_entity_decode($chaine)."\n"); 1580 } 1581 echo $chaine."<br />\n"; 1582 for($i=0;$i<count($divisions);$i++){ 1583 //$divisions[$i]["services"][$j]["code_matiere"] 1584 $classe=$divisions[$i]["code"]; 1585 for($j=0;$j<count($divisions[$i]["services"]);$j++){ 1586 $mat=""; 1587 for($m=0;$m<count($matiere);$m++){ 1588 if($matiere[$m]["code"]==$divisions[$i]["services"][$j]["code_matiere"]){ 1589 $mat=$matiere[$m]["code_gestion"]; 1590 } 1591 } 1592 if($mat!=""){ 1593 for($k=0;$k<count($divisions[$i]["services"][$j]["enseignants"]);$k++){ 1594 //echo $mat."|".$classe."|P".$divisions[$i]["services"][$j]["enseignants"][$k]["id"]."<br />\n"; 1595 //echo $mat.";P".$divisions[$i]["services"][$j]["enseignants"][$k]["id"].";".$classe."<br />\n"; 1596 $chaine=$mat.";P".$divisions[$i]["services"][$j]["enseignants"][$k]["id"].";".$classe; 1597 if($fich){ 1598 fwrite($fich,html_entity_decode($chaine)."\n"); 1599 } 1600 echo $chaine."<br />\n"; 1601 } 1602 } 1603 } 1604 } 1605 1606 //echo "<hr width='200' />\n"; 1607 for($i=0;$i<count($groupes);$i++){ 1608 $grocod=$groupes[$i]["code"]; 1609 //echo "<p>Groupe $i: \$grocod=$grocod<br />\n"; 1610 for($m=0;$m<count($matiere);$m++){ 1611 //echo "\$matiere[$m][\"code\"]=".$matiere[$m]["code"]." et \$groupes[$i][\"code_matiere\"]=".$groupes[$i]["code_matiere"]."<br />\n"; 1612 if($matiere[$m]["code"]==$groupes[$i]["code_matiere"]){ 1613 //$matimn=$programme[$k]["code_matiere"]; 1614 $matimn=$matiere[$m]["code_gestion"]; 1615 //echo "<b>Trouvé: matière n�$m: \$matimn=$matimn</b><br />\n"; 1616 } 1617 } 1618 //$groupes[$i]["enseignant"][$m]["id"] 1619 //$groupes[$i]["divisions"][$j]["code"] 1620 if($matimn!=""){ 1621 for($j=0;$j<count($groupes[$i]["divisions"]);$j++){ 1622 $elstco=$groupes[$i]["divisions"][$j]["code"]; 1623 //echo "\$elstco=$elstco<br />\n"; 1624 if(count($groupes[$i]["enseignant"])==0){ 1625 $chaine="$matimn;;$elstco"; 1626 if($fich){ 1627 fwrite($fich,html_entity_decode($chaine)."\n"); 1628 } 1629 echo $chaine."<br />\n"; 1630 } 1631 else{ 1632 for($m=0;$m<count($groupes[$i]["enseignant"]);$m++){ 1633 $numind=$groupes[$i]["enseignant"][$m]["id"]; 1634 //echo "$matimn;P$numind;$elstco<br />\n"; 1635 $chaine="$matimn;P$numind;$elstco"; 1636 if($fich){ 1637 fwrite($fich,html_entity_decode($chaine)."\n"); 1638 } 1639 echo $chaine."<br />\n"; 1640 } 1641 } 1642 //echo $grocod.";".$groupes[$i]["divisions"][$j]["code"]."<br />\n"; 1643 } 1644 } 1645 1646 1647 /* 1648 $matimn=""; 1649 //for($j=0;$j<count($groupes[$i]["mef"]);$j++){ 1650 //$mef=$groupes[$i]["mef"][$j]; 1651 $mef=$groupes[$i]["mef"][0]; 1652 for($k=0;$k<count($programme);$k++){ 1653 if($mef==$programme[$k]["code_mef"]){ 1654 for($m=0;$m<count($matiere);$m++){ 1655 if($matiere[$m]["code"]==$programme[$k]["code_matiere"]){ 1656 //$matimn=$programme[$k]["code_matiere"]; 1657 $matimn=$matiere[$m]["code_gestion"]; 1658 } 1659 } 1660 } 1661 } 1662 //} 1663 if($matimn!=""){ 1664 // Rechercher le NUMIND... 1665 //... 1666 //$groupes[$i]["enseignant"][$m]["id"] 1667 1668 // Et enfin pour la liste des classes, on affiche une ligne: 1669 for($j=0;$j<count($groupes[$i]["divisions"]);$j++){ 1670 $elstco=$groupes[$i]["divisions"][$j]["code"]; 1671 for($m=0;$m<count($groupes[$i]["enseignant"]);$m++){ 1672 $numind=$groupes[$i]["enseignant"][$m]["id"]; 1673 echo "$matimn;P$numind;$elstco<br />\n"; 1674 } 1675 //echo $grocod.";".$groupes[$i]["divisions"][$j]["code"]."<br />\n"; 1676 } 1677 } 1678 */ 1679 } 1680 if($temoin_creation_fichiers!="non"){fclose($fich);} 1681 } 1682 echo "<p>Je ne sais pas trop pour le préfixe P.<br />Il n'est pas dans le fichier XML, mais est utilisé par SE3...<br />Et par contre, sur les F_WIND.DBF générés par AutoSco, il y a un préfixe E.</p>"; 1683 echo "</blockquote>\n"; 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 echo "<a name='f_gpd_gepi'></a><h2>Génération d'un CSV du F_GPD pour GEPI</h2>\n"; 1698 echo "<blockquote>\n"; 1699 echo "\$temoin_creation_fichiers=$temoin_creation_fichiers<br />"; 1700 /* 1701 if(($temoin_au_moins_une_matiere=="")||($temoin_au_moins_un_prof=="")){ 1702 echo "<p>Votre fichier ne comporte pas suffisamment d'informations pour générer ce CSV.<br />Il faut que les emplois du temps soient remontés vers STS pour que le fichier XML permette de générer ce CSV.</p>\n"; 1703 } 1704 else{ 1705 */ 1706 //echo "GROCOD;DIVCOD<br />\n"; 1707 if($temoin_creation_fichiers!="non"){$fich=fopen("$dossiercsv/gepi/f_gpd.csv","w+");} 1708 $chaine="GROCOD;DIVCOD"; 1709 if($fich){ 1710 fwrite($fich,html_entity_decode($chaine)."\n"); 1711 } 1712 echo $chaine."<br />\n"; 1713 1714 for($i=0;$i<count($groupes);$i++){ 1715 //$divisions[$i]["services"][$j]["code_matiere"] 1716 $grocod=$groupes[$i]["code"]; 1717 for($j=0;$j<count($groupes[$i]["divisions"]);$j++){ 1718 //echo $grocod.";".$groupes[$i]["divisions"][$j]["code"]."<br />\n"; 1719 $chaine=$grocod.";".$groupes[$i]["divisions"][$j]["code"]; 1720 if($fich){ 1721 fwrite($fich,html_entity_decode($chaine)."\n"); 1722 } 1723 echo $chaine."<br />\n"; 1724 } 1725 } 1726 // } 1727 if($temoin_creation_fichiers!="non"){fclose($fich);} 1728 echo "</blockquote>\n"; 1729 1730 1731 1732 echo "<a name='f_tmt_gepi'></a><h2>Génération d'un CSV du F_TMT pour GEPI</h2>\n"; 1733 echo "<blockquote>\n"; 1734 //echo "MATIMN;MATILC<br />\n"; 1735 if($temoin_creation_fichiers!="non"){$fich=fopen("$dossiercsv/gepi/f_tmt.csv","w+");} 1736 $chaine="MATIMN;MATILC"; 1737 if($fich){ 1738 fwrite($fich,html_entity_decode($chaine)."\n"); 1739 } 1740 echo $chaine."<br />\n"; 1741 for($i=0;$i<count($matiere);$i++){ 1742 //echo $matiere[$i]["code_gestion"].";".$matiere[$i]["libelle_court"]."<br />\n"; 1743 $chaine=$matiere[$i]["code_gestion"].";".$matiere[$i]["libelle_court"]; 1744 if($fich){ 1745 fwrite($fich,html_entity_decode($chaine)."\n"); 1746 } 1747 echo $chaine."<br />\n"; 1748 } 1749 if($temoin_creation_fichiers!="non"){fclose($fich);} 1750 echo "</blockquote>\n"; 1751 1752 1753 1754 echo "<a name='f_div_gepi'></a><h2>Génération d'un CSV du F_DIV pour GEPI</h2>\n"; 1755 echo "<blockquote>\n"; 1756 if($temoin_creation_fichiers!="non"){$fich=fopen("$dossiercsv/gepi/f_div.csv","w+");} 1757 $chaine="DIVCOD;NUMIND"; 1758 if($fich){ 1759 fwrite($fich,html_entity_decode($chaine)."\n"); 1760 } 1761 echo $chaine."<br />\n"; 1762 for($i=0;$i<count($divisions);$i++){ 1763 $numind_pp=""; 1764 for($m=0;$m<count($prof);$m++){ 1765 for($n=0;$n<count($prof[$m]["prof_princ"]);$n++){ 1766 if($prof[$m]["prof_princ"][$n]["code_structure"]==$divisions[$i]["code"]){ 1767 $numind_pp="P".$prof[$m]["id"]; 1768 } 1769 } 1770 } 1771 //echo $divisions[$i]["code"].";".$divisions[$i]["code"].";".$numind_pp."<br />\n"; 1772 $chaine=$divisions[$i]["code"].";".$numind_pp; 1773 if($fich){ 1774 fwrite($fich,html_entity_decode($chaine)."\n"); 1775 } 1776 echo $chaine."<br />\n"; 1777 } 1778 if($temoin_creation_fichiers!="non"){fclose($fich);} 1779 echo "<p>Ce CSV est destiné à renseigner les Professeurs Principaux...</p>\n"; 1780 echo "</blockquote>\n"; 1781 1782 if($temoin_creation_fichiers!="non"){ 1783 //echo "<div style='position:absolute; top: 50px; left: 50px; width: 300px; height: 200px; background: yellow; border: 1px solid black;'>\n"; 1784 echo "<div style='position:absolute; top: 70px; left: 300px; width: 300px; background: yellow; border: 1px solid black; padding-left: 5px; padding-right: 5px; padding-top: 0; '>\n"; 1785 echo "<h4 style='margin:0; padding:0; text-align:center;'>GEPI</h4>\n"; 1786 //echo "<p style='margin-top: 0;'>Effectuez un Clic-droit/Enregistrer la cible du lien sous... pour chacun des fichiers ci-dessous.</p>\n"; 1787 echo "<p style='margin-top: 0;'>Récupérez les CSV suivants pour GEPI:</p>\n"; 1788 echo "<table border='0'>\n"; 1789 echo "<tr><td>Fichier Profs:</td><td><a href='$dossiercsv/gepi/f_wind.csv'>f_wind.csv</a></td></tr>\n"; 1790 echo "<tr><td>Fichier Classes/matières/profs:</td><td>\n"; 1791 if(file_exists("$dossiercsv/gepi/f_men.csv")){ 1792 echo "<a href='$dossiercsv/gepi/f_men.csv'>f_men.csv</a>"; 1793 } 1794 else{ 1795 echo "Fichier non généré.<br />L'emploi du temps n'est sans doute pas encore remonté."; 1796 } 1797 echo "</td></tr>\n"; 1798 echo "<tr><td>Fichier Groupes/classes:</td><td>\n"; 1799 if(file_exists("$dossiercsv/gepi/f_gpd.csv")){ 1800 echo "<a href='$dossiercsv/gepi/f_gpd.csv'>f_gpd.csv</a>"; 1801 } 1802 else{ 1803 echo "Fichier non généré.<br />L'emploi du temps n'est sans doute pas encore remonté."; 1804 } 1805 echo "</td></tr>\n"; 1806 echo "<tr><td>Fichier Matières:</td><td><a href='$dossiercsv/gepi/f_tmt.csv'>f_tmt.csv</a></td></tr>\n"; 1807 echo "<tr><td>Fichier Profs principaux:</td><td><a href='$dossiercsv/gepi/f_div.csv'>f_div.csv</a></td></tr>\n"; 1808 echo "</table>\n"; 1809 if($_POST['mdp']=="alea"){ 1810 echo "<p>Voici également une <a href='$dossiercsv/profs.html' target='_blank'>page des mots de passe initiaux des professeurs</a> à imprimer avant de procéder au nettoyage ci-dessous.</p>\n"; 1811 } 1812 echo "<hr width='200' align='center' />\n"; 1813 echo "<p style='margin-top: 0;'>Récupérez les CSV suivants pour SE3:</p>\n"; 1814 echo "<table border='0'>\n"; 1815 echo "<tr><td>Fichier Profs:</td><td><a href='$dossiercsv/se3/f_wind.txt'>f_wind.txt</a></td></tr>\n"; 1816 echo "<tr><td>Fichier Classes/matières/profs:</td><td>"; 1817 if(file_exists("$dossiercsv/se3/f_men.txt")){ 1818 echo "<a href='$dossiercsv/se3/f_men.txt'>f_men.txt</a>"; 1819 } 1820 else{ 1821 echo "Fichier non généré.<br />L'emploi du temps n'est sans doute pas encore remonté."; 1822 } 1823 echo "</td></tr>\n"; 1824 echo "<tr><td>Fichier Profs principaux:</td><td><a href='$dossiercsv/se3/f_div.txt'>f_div.txt</a></td></tr>\n"; 1825 echo "</table>\n"; 1826 1827 /* 1828 echo "<ul>\n"; 1829 echo "<li>Fichier Profs: <a href='$dossiercsv/f_wind.csv'>f_wind.csv</a></li>\n"; 1830 echo "<li>Fichier Classes/matières/profs: <a href='$dossiercsv/f_men.csv'>f_men.csv</a></li>\n"; 1831 echo "<li>Fichier Groupes/classes: <a href='$dossiercsv/f_gpd.csv'>f_gpd.csv</a></li>\n"; 1832 echo "<li>Fichier Matières: <a href='$dossiercsv/f_tmt.csv'>f_tmt.csv</a></li>\n"; 1833 echo "<li>Fichier Profs principaux: <a href='$dossiercsv/f_div.csv'>f_div.csv</a></li>\n"; 1834 1835 echo "<li>Fichier Profs: <a href='save_csv.php?fileid=0'>f_wind.csv</a></li>\n"; 1836 echo "<li>Fichier Classes/matières/profs: <a href='save_csv.php?fileid=1'>f_men.csv</a></li>\n"; 1837 echo "<li>Fichier Groupes/classes: <a href='save_csv.php?fileid=2'>f_gpd.csv</a></li>\n"; 1838 echo "<li>Fichier Matières: <a href='save_csv.php?fileid=3'>f_tmt.csv</a></li>\n"; 1839 echo "<li>Fichier Profs principaux: <a href='save_csv.php?fileid=4'>f_div.csv</a></li>\n"; 1840 echo "</ul>\n"; 1841 if($_POST['mdp']=="alea"){ 1842 echo "<p>Voici également une <a href='$dossiercsv/profs.html' target='_blank'>page des mots de passe initiaux des professeurs</a> à imprimer avant de procéder au nettoyage ci-dessous.</p>\n"; 1843 } 1844 */ 1845 echo "<p>Pour supprimer les fichiers après récupération: <a href='".$_SERVER['PHP_SELF']."?nettoyage=oui&date=$doss_date'>Nettoyage</a></p>\n"; 1846 echo "</div>\n"; 1847 } 1848 } 1849 else{ 1850 echo "<p>ERREUR!<br /><a href='".$_SERVER['PHP_SELF']."'>Retour</a>.</p>\n"; 1851 } 1852 } 1853 } 1854 ?> 1855 <!--p>Retour à l'<a href="index.php">index</a></p--> 1856 </div> 1857 </body> 1858 </html>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Tue Mar 17 22:47:18 2015 | Cross-referenced by PHPXref 0.7.1 |