Example #1
0
 function enregDataEtudXML($repfic, $nf)
 {
     $ok = '';
     $this->model();
     $model = new Model();
     if ($ch = implode("", file($repfic . $nf))) {
         $data = 'sauvegarde';
         $tb1 = preg_split("/<\\/?" . $data . ".*>/", $ch);
         $dataSv = array("ref", "datesv");
         foreach ($dataSv as $balise) {
             $tb2 = preg_split("/<\\/?" . $balise . ">/", $tb1[1]);
             $res[] = $tb2[1];
         }
         $ref = $res[0];
         $datesv = $res[1];
         if (substr($nf, 4, 13) == $ref) {
             $data = 'etudiant';
             $tb1 = preg_split("/<\\/?" . $data . ".*>/", $ch);
             $ch = $tb1[1];
             $res = null;
             $dataEleve = array("nom", "prenom", "mel");
             foreach ($dataEleve as $balise) {
                 $tb2 = preg_split("/<\\/?" . $balise . ">/", $ch);
                 $res[] = $tb2[1];
             }
             $ch = $tb2[2];
             //$nom=$res[0];
             //$prenom=$res[1];
             $mel = $res[2];
             $resmel = $model->existeMelEtudiant($mel);
             $num = $resmel[0]["num"];
             if (!is_null($num)) {
                 $model->supprSituEtudiantTout($num);
                 $chSit = "situation";
                 $tb4 = preg_split("/<\\/?" . $chSit . ".*>/", $ch);
                 for ($i = 1; $i < count($tb4) - 1; $i += 2) {
                     //itération sur situation
                     $res = null;
                     $dataSit = array("ref", "codeType", "codeLocalisation", "codeSource", "codeCadre", "libcourt", "descriptif", "contexte", "datedebut", "datefin", "environnement", "moyen", "avisperso");
                     foreach ($dataSit as $balise) {
                         $tb2 = preg_split("/<\\/?" . $balise . ">/", $tb4[$i]);
                         $res[] = $tb2[1];
                     }
                     $ref = $model->creeSituation($res, $num);
                     $chPro = "avisprof";
                     $tb5 = preg_split("/<\\/?" . $chPro . ".*>/", $tb4[$i]);
                     for ($j = 1; $j < count($tb5) - 1; $j += 2) {
                         $res = null;
                         $dataPro = array("commentaire", "datecommentaire", "numprof", "nomprof", "melprof");
                         foreach ($dataPro as $balise) {
                             $tb2 = preg_split("/<\\/?" . $balise . ">/", $tb5[$j]);
                             $res[] = $tb2[1];
                         }
                         $model->creeCommentaire($res, $ref);
                     }
                     $chPro = "activitecitee";
                     $tb5 = preg_split("/<\\/?" . $chPro . ".*>/", $tb4[$i]);
                     for ($j = 1; $j < count($tb5) - 1; $j += 2) {
                         $res = null;
                         $dataPro = array("idActivite", "commentaireactivite");
                         foreach ($dataPro as $balise) {
                             $tb2 = preg_split("/<\\/?" . $balise . ">/", $tb5[$j]);
                             $res[] = $tb2[1];
                         }
                         $model->creeActivitecitee($res, $ref);
                     }
                     $chPro = "production";
                     $tb5 = preg_split("/<\\/?" . $chPro . ".*>/", $tb4[$i]);
                     for ($j = 1; $j < count($tb5) - 1; $j += 2) {
                         $res = null;
                         $dataPro = array("designation", "adresse");
                         foreach ($dataPro as $balise) {
                             $tb2 = preg_split("/<\\/?" . $balise . ">/", $tb5[$j]);
                             $res[] = $tb2[1];
                         }
                         $model->creeProduction($res, $ref);
                     }
                     $chPro = "typologie";
                     $tb5 = preg_split("/<\\/?" . $chPro . ".*>/", $tb4[$i]);
                     for ($j = 1; $j < count($tb5) - 1; $j += 2) {
                         $res = null;
                         $dataPro = array("codeTypologie");
                         foreach ($dataPro as $balise) {
                             $tb2 = preg_split("/<\\/?" . $balise . ">/", $tb5[$j]);
                             $res[] = $tb2[1];
                         }
                         $model->creeTypologie($res, $ref);
                     }
                 }
             } else {
                 $ok = "mel &eacute;tudiant inconnu";
             }
         } else {
             $ok = 'mauvaise r&eacute;f&eacute;rence de fichier';
         }
     } else {
         $ok = "erreur fichier serveur";
     }
     $model->close();
     return $ok;
 }