conteneur = $conteneur; $this->bdd = $this->conteneur->getBdd(); $this->bddOsmNom = $this->conteneur->getParametre('bdd_osm_nom'); $this->messages = $this->conteneur->getMessages(); $this->mode = $this->conteneur->getParametre('m'); } public function executer() { // Lancement de l'action demandée $cmd = $this->conteneur->getParametre('a'); switch ($cmd) { case 'cm' : $this->supprimerTableOsmCommunes(); $this->conteneur->getEfloreCommun()->chargerStructureSql(); $this->creerTableOsmCommunes(); break; case 'cmCreer' : $this->creerTableOsmCommunes(); break; case 'cmSupprimer' : $this->supprimerTableOsmCommunes(); break; default : $this->messages->traiterErreur('Erreur : la commande "%s" n\'existe pas!', array($cmd)); } } private function supprimerTableOsmCommunes() { $requete = 'DROP TABLE IF EXISTS osm_communes '. ' -- '.__FILE__.' : '.__LINE__; $this->bdd->requeter($requete); } private function creerTableOsmCommunes() { $requete = 'INSERT INTO osm_communes '. "SELECT osm_id, osm_version, osm_timestamp, name, ref_insee, shape, shape_centroid, wikipedia ". "FROM {$this->bddOsmNom}.multipolygons_ref ". "WHERE admin_level = 8 ". "AND (ref_insee IS NOT NULL OR ref_insee != '') ". "AND CHAR_LENGTH(ref_insee) = 5 ". ' -- '.__FILE__.' : '.__LINE__; $this->bdd->requeter($requete); } }