1 |
<?php
|
1 |
<?php
|
2 |
// declare(encoding='UTF-8');
|
2 |
// declare(encoding='UTF-8');
|
3 |
/**
|
3 |
/**
|
4 |
* Classe de nettoyage de la base de données du CEL.
|
4 |
* Classe de nettoyage de la base de données du CEL.
|
5 |
* Suppression des antislash
|
5 |
* Suppression des antislash
|
6 |
* Remplacement des chaines vides par des NULL
|
6 |
* Remplacement des chaines vides par des NULL
|
7 |
* Unifier les référentiels : pas de nom de version, majuscule...
|
7 |
* Unifier les référentiels : pas de nom de version, majuscule...
|
8 |
* Unifier les certitudes
|
8 |
* Unifier les certitudes
|
9 |
* Supprimer les INSEE-C: non rempli, les dates 0000-00
|
9 |
* Supprimer les INSEE-C: non rempli, les dates 0000-00
|
10 |
*
|
10 |
*
|
11 |
* Utilisation :
|
11 |
* Utilisation :
|
12 |
* - <code>/opt/lamp/bin/php cli.php nettoyage -a (voir méthode executer)</code>
|
12 |
* - <code>/opt/lamp/bin/php cli.php nettoyage -a (voir méthode executer)</code>
|
13 |
*
|
13 |
*
|
14 |
* @category CEL
|
14 |
* @category CEL
|
15 |
* @package Scripts
|
15 |
* @package Scripts
|
16 |
* @subpackage Nettoyage
|
16 |
* @subpackage Nettoyage
|
17 |
* @author Delphine CAUQUIL <delphine@tela-botanica.org>
|
17 |
* @author Delphine CAUQUIL <delphine@tela-botanica.org>
|
18 |
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
|
18 |
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
|
19 |
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
|
19 |
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
|
20 |
* @copyright 1999-2016 Tela Botanica <accueil@tela-botanica.org>
|
20 |
* @copyright 1999-2016 Tela Botanica <accueil@tela-botanica.org>
|
21 |
*/
|
21 |
*/
|
22 |
class Nettoyage extends Script {
|
22 |
class Nettoyage extends Script {
|
23 |
|
23 |
|
24 |
protected $bdd;
|
24 |
protected $bdd;
|
25 |
protected $colonnes;
|
25 |
protected $colonnes;
|
26 |
protected $bd_cel = "tb_nettoye_cel";
|
26 |
protected $bd_cel = "tb_nettoye_cel";
|
27 |
protected $bd_del = "tb_del";
|
27 |
protected $bd_del = "tb_del";
|
28 |
|
28 |
|
29 |
|
29 |
|
30 |
public function __construct($script_nom, $parametres_cli) {
|
30 |
public function __construct($script_nom, $parametres_cli) {
|
31 |
parent::__construct($script_nom, $parametres_cli);
|
31 |
parent::__construct($script_nom, $parametres_cli);
|
32 |
$this->bdd = new Bdd();
|
32 |
$this->bdd = new Bdd();
|
33 |
$this->bd_cel = Config::get('nettoyage.cel_nettoye');
|
33 |
$this->bd_cel = Config::get('nettoyage.cel_nettoye');
|
34 |
$this->bd_del = Config::get('nettoyage.del');
|
34 |
$this->bd_del = Config::get('nettoyage.del');
|
35 |
}
|
35 |
}
|
36 |
|
36 |
|
37 |
public function executer() {
|
37 |
public function executer() {
|
38 |
$cmd = $this->getParametre('a');
|
38 |
$cmd = $this->getParametre('a');
|
39 |
$requete_colonnes = "SELECT column_name FROM information_schema.columns WHERE table_name = '".$this->bd_cel."cel_obs' AND table_schema='tb_cel';";
|
39 |
$requete_colonnes = "SELECT column_name FROM information_schema.columns WHERE table_name = 'cel_obs' AND table_schema='".$this->bd_cel."';";
|
40 |
$this->colonnes = $this->bdd->recupererTous($requete_colonnes);
|
40 |
$this->colonnes = $this->bdd->recupererTous($requete_colonnes);
|
41 |
try {
|
41 |
try {
|
42 |
switch ($cmd) {
|
42 |
switch ($cmd) {
|
43 |
case 'tout' :
|
43 |
case 'tout' :
|
44 |
$this->supprimerRetourLigne();
|
44 |
$this->supprimerRetourLigne();
|
45 |
$this->supprimerAntislash();
|
45 |
$this->supprimerAntislash();
|
46 |
$this->supprimerGuillemet();
|
46 |
$this->supprimerGuillemet();
|
47 |
$this->unifierNull();
|
47 |
$this->unifierNull();
|
48 |
$this->unifierNomReferentiel();
|
48 |
$this->unifierNomReferentiel();
|
49 |
$this->unifierCertitude();
|
49 |
$this->unifierCertitude();
|
50 |
$this->supprimerCertitudeAutre();
|
50 |
$this->supprimerCertitudeAutre();
|
51 |
$this->unifierUtilisateur();
|
51 |
$this->unifierUtilisateur();
|
52 |
$this->verifierCodeInsee();
|
52 |
$this->verifierCodeInsee();
|
53 |
$this->verifierGeodatum();
|
53 |
$this->verifierGeodatum();
|
54 |
$this->supprimerInfosLiesObsInexistante();
|
54 |
$this->supprimerInfosLiesObsInexistante();
|
55 |
$this->supprimerImagesetTagAnonymes();
|
55 |
$this->supprimerImagesetTagAnonymes();
|
56 |
$this->analyserMotsCles();
|
56 |
$this->analyserMotsCles();
|
57 |
$this->changerSensible();
|
57 |
$this->changerSensible();
|
58 |
$this->unifierNull();
|
58 |
$this->unifierNull();
|
59 |
break;
|
59 |
break;
|
60 |
case 'supprimerRetourLigne' :
|
60 |
case 'supprimerRetourLigne' :
|
61 |
$this->supprimerRetourLigne();
|
61 |
$this->supprimerRetourLigne();
|
62 |
break;
|
62 |
break;
|
63 |
case 'supprimerAntislash' :
|
63 |
case 'supprimerAntislash' :
|
64 |
$this->supprimerAntislash();
|
64 |
$this->supprimerAntislash();
|
65 |
break;
|
65 |
break;
|
66 |
case 'supprimerGuillemet' :
|
66 |
case 'supprimerGuillemet' :
|
67 |
$this->supprimerGuillemet();
|
67 |
$this->supprimerGuillemet();
|
68 |
break;
|
68 |
break;
|
69 |
case 'unifierNomReferentiel' :
|
69 |
case 'unifierNomReferentiel' :
|
70 |
$this->unifierNomReferentiel();
|
70 |
$this->unifierNomReferentiel();
|
71 |
break;
|
71 |
break;
|
72 |
case 'unifierCertitude' :
|
72 |
case 'unifierCertitude' :
|
73 |
$this->unifierCertitude();
|
73 |
$this->unifierCertitude();
|
74 |
break;
|
74 |
break;
|
75 |
case 'supprimerCertitudeAutre' : // après unifier certitude si les autres valeurs sont bien à supprimer
|
75 |
case 'supprimerCertitudeAutre' : // après unifier certitude si les autres valeurs sont bien à supprimer
|
76 |
$this->supprimerCertitudeAutre();
|
76 |
$this->supprimerCertitudeAutre();
|
77 |
break;
|
77 |
break;
|
78 |
case 'analyserMotsCles' : // après unifier certitude si les autres valeurs sont bien à supprimer
|
78 |
case 'analyserMotsCles' : // après unifier certitude si les autres valeurs sont bien à supprimer
|
79 |
$this->analyserMotsCles();
|
79 |
$this->analyserMotsCles();
|
80 |
break;
|
80 |
break;
|
81 |
case 'verifierGeodatum' :
|
81 |
case 'verifierGeodatum' :
|
82 |
$this->verifierGeodatum();
|
82 |
$this->verifierGeodatum();
|
83 |
break;
|
83 |
break;
|
84 |
case 'verifierCodeInsee' :
|
84 |
case 'verifierCodeInsee' :
|
85 |
$this->verifierCodeInsee();
|
85 |
$this->verifierCodeInsee();
|
86 |
break;
|
86 |
break;
|
87 |
case 'sensible' :
|
87 |
case 'sensible' :
|
88 |
$this->changerSensible();
|
88 |
$this->changerSensible();
|
89 |
break;
|
89 |
break;
|
90 |
case 'unifierNull' : // lancer en dernier pour bien réussir
|
90 |
case 'unifierNull' : // lancer en dernier pour bien réussir
|
91 |
$this->unifierNull();
|
91 |
$this->unifierNull();
|
92 |
break;
|
92 |
break;
|
93 |
case 'supprimerInfosLiesObsInexistante' :
|
93 |
case 'supprimerInfosLiesObsInexistante' :
|
94 |
$this->supprimerInfosLiesObsInexistante();
|
94 |
$this->supprimerInfosLiesObsInexistante();
|
95 |
break;
|
95 |
break;
|
96 |
case 'unifierUtilisateur' :
|
96 |
case 'unifierUtilisateur' :
|
97 |
$this->unifierUtilisateur();
|
97 |
$this->unifierUtilisateur();
|
98 |
break;
|
98 |
break;
|
99 |
case 'unifierInfosEspece' :
|
99 |
case 'unifierInfosEspece' :
|
100 |
$this->unifierUtilisateur();
|
100 |
$this->unifierUtilisateur();
|
101 |
break;
|
101 |
break;
|
102 |
default :
|
102 |
default :
|
103 |
$msg = "Erreur : la commande '$cmd' n'existe pas!\n".
|
103 |
$msg = "Erreur : la commande '$cmd' n'existe pas!\n".
|
104 |
"Commandes existantes : regenererMotsClesTexteObs, regenererMotsClesTexteImages"
|
104 |
"Commandes existantes : regenererMotsClesTexteObs, regenererMotsClesTexteImages"
|
105 |
. ", regenererMotsClesTexteObsTout, regenererMotsClesTexteImagesTout"
|
105 |
. ", regenererMotsClesTexteObsTout, regenererMotsClesTexteImagesTout"
|
106 |
. ", viderMotsClesTexteImagesSansMotsCles, viderMotsClesTexteObsSansMotsCles"
|
106 |
. ", viderMotsClesTexteImagesSansMotsCles, viderMotsClesTexteObsSansMotsCles"
|
107 |
. ", regenererChampsTailleImage, reparerLiaisonsOublieesObs, reparerLiaisonsOublieesImages"
|
107 |
. ", regenererChampsTailleImage, reparerLiaisonsOublieesObs, reparerLiaisonsOublieesImages"
|
108 |
. ", reparerLiaisonsObsParMotsClesTexte, reductionMotsClesImages, reductionMotsClesImagesUtil"
|
108 |
. ", reparerLiaisonsObsParMotsClesTexte, reductionMotsClesImages, reductionMotsClesImagesUtil"
|
109 |
. ", reduireEtNormaliserMotsClesImagesUtil, reduireEtNormaliserMotsClesImages"
|
109 |
. ", reduireEtNormaliserMotsClesImagesUtil, reduireEtNormaliserMotsClesImages"
|
110 |
. ", reductionMotsClesObs, reductionMotsClesObsUtil, reduireEtNormaliserMotsClesObsUtil"
|
110 |
. ", reductionMotsClesObs, reductionMotsClesObsUtil, reduireEtNormaliserMotsClesObsUtil"
|
111 |
. ", reduireEtNormaliserMotsClesObs";
|
111 |
. ", reduireEtNormaliserMotsClesObs";
|
112 |
throw new Exception($msg);
|
112 |
throw new Exception($msg);
|
113 |
}
|
113 |
}
|
114 |
} catch (Exception $e) {
|
114 |
} catch (Exception $e) {
|
115 |
$this->traiterErreur($e->getMessage());
|
115 |
$this->traiterErreur($e->getMessage());
|
116 |
}
|
116 |
}
|
117 |
}
|
117 |
}
|
118 |
|
118 |
|
119 |
|
119 |
|
120 |
private function supprimerRetourLigne() {
|
120 |
private function supprimerRetourLigne() {
|
121 |
foreach ($this->colonnes as $id=>$colonne) {
|
121 |
foreach ($this->colonnes as $id=>$colonne) {
|
122 |
echo "Suppression des retour ligne dans la colonne ".$colonne['column_name']." ...";
|
122 |
echo "Suppression des retour ligne dans la colonne ".$colonne['column_name']." ...";
|
123 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].', "\n", "")';
|
123 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].', "\n", "")';
|
124 |
$this->bdd->requeter($requete);
|
124 |
$this->bdd->requeter($requete);
|
125 |
echo "effectuée \n";
|
125 |
echo "effectuée \n";
|
126 |
}
|
126 |
}
|
127 |
}
|
127 |
}
|
128 |
|
128 |
|
129 |
private function supprimerAntislash() {
|
129 |
private function supprimerAntislash() {
|
130 |
foreach ($this->colonnes as $id=>$colonne) {
|
130 |
foreach ($this->colonnes as $id=>$colonne) {
|
131 |
echo "Suppression des antislash dans la colonne ".$colonne['column_name']." ...";
|
131 |
echo "Suppression des antislash dans la colonne ".$colonne['column_name']." ...";
|
132 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].', "\", "")';
|
132 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].', "\", "")';
|
133 |
$this->bdd->requeter($requete);
|
133 |
$this->bdd->requeter($requete);
|
134 |
echo "effectuée \n";
|
134 |
echo "effectuée \n";
|
135 |
}
|
135 |
}
|
136 |
}
|
136 |
}
|
137 |
|
137 |
|
138 |
private function supprimerGuillemet() {
|
138 |
private function supprimerGuillemet() {
|
139 |
foreach ($this->colonnes as $id=>$colonne) {
|
139 |
foreach ($this->colonnes as $id=>$colonne) {
|
140 |
echo "Suppression des guillements dans la colonne ".$colonne['column_name']." ...";
|
140 |
echo "Suppression des guillements dans la colonne ".$colonne['column_name']." ...";
|
141 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].',"\"", "")';
|
141 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].',"\"", "")';
|
142 |
$this->bdd->requeter($requete);
|
142 |
$this->bdd->requeter($requete);
|
143 |
echo "effectuée \n";
|
143 |
echo "effectuée \n";
|
144 |
}
|
144 |
}
|
145 |
}
|
145 |
}
|
146 |
|
146 |
|
147 |
private function unifierNull() {
|
147 |
private function unifierNull() {
|
148 |
$requete_colonnes = "SELECT column_name FROM information_schema.columns WHERE table_name = '".$this->bd_cel.".cel_obs' AND table_schema='tb_cel';";
|
148 |
$requete_colonnes = "SELECT column_name FROM information_schema.columns WHERE table_name = '".$this->bd_cel.".cel_obs' AND table_schema='tb_cel';";
|
149 |
$colonnes = $this->bdd->recupererTous($requete_colonnes);
|
149 |
$colonnes = $this->bdd->recupererTous($requete_colonnes);
|
150 |
foreach ($colonnes as $colonne) {
|
150 |
foreach ($colonnes as $colonne) {
|
151 |
echo "Suppression des vides dans la colonne ".$colonne['column_name']." ...";
|
151 |
echo "Suppression des vides dans la colonne ".$colonne['column_name']." ...";
|
152 |
$dsl = array( 'transmission', 'altitude');
|
152 |
$dsl = array( 'transmission', 'altitude');
|
153 |
if (isset($dsl[$colonne['column_name']])) {
|
153 |
if (isset($dsl[$colonne['column_name']])) {
|
154 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = NULL WHERE ".$colonne['column_name']."= ''";
|
154 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = NULL WHERE ".$colonne['column_name']."= ''";
|
155 |
} else {
|
155 |
} else {
|
156 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = NULL WHERE ".$colonne['column_name']."= '' OR ".$colonne['column_name']." IN ('INSEE-C:', '0000-00-00 00:00:00', '0.00000')";
|
156 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = NULL WHERE ".$colonne['column_name']."= '' OR ".$colonne['column_name']." IN ('INSEE-C:', '0000-00-00 00:00:00', '0.00000')";
|
157 |
}
|
157 |
}
|
158 |
$this->bdd->requeter($requete);
|
158 |
$this->bdd->requeter($requete);
|
159 |
echo "effectuée \n";
|
159 |
echo "effectuée \n";
|
160 |
}
|
160 |
}
|
161 |
}
|
161 |
}
|
162 |
|
162 |
|
163 |
private function unifierCertitude() {
|
163 |
private function unifierCertitude() {
|
164 |
echo "Uniformisation du champ certitude/identification";
|
164 |
echo "Uniformisation du champ certitude/identification";
|
165 |
$certitude = array("A déterminer" => "à déterminer",
|
165 |
$certitude = array("A déterminer" => "à déterminer",
|
166 |
"À déterminer, voir photo" => "à déterminer",
|
166 |
"À déterminer, voir photo" => "à déterminer",
|
167 |
"aDeterminer" => "à déterminer",
|
167 |
"aDeterminer" => "à déterminer",
|
168 |
"déterminer" => "à déterminer",
|
168 |
"déterminer" => "à déterminer",
|
169 |
"Inconnue" => "à déterminer",
|
169 |
"Inconnue" => "à déterminer",
|
170 |
"Ceraine" => "certain",
|
170 |
"Ceraine" => "certain",
|
171 |
"certain" => "certain",
|
171 |
"certain" => "certain",
|
172 |
"Certainaaua" => "certain",
|
172 |
"Certainaaua" => "certain",
|
173 |
"Certaine" => "certain",
|
173 |
"Certaine" => "certain",
|
174 |
"Certaine K- rhizines blanche" => "certain",
|
174 |
"Certaine K- rhizines blanche" => "certain",
|
175 |
"Certaine ( mais voir notes)" => "certain",
|
175 |
"Certaine ( mais voir notes)" => "certain",
|
176 |
"Certaine (à 99%)" => "certain",
|
176 |
"Certaine (à 99%)" => "certain",
|
177 |
"Certaine Anett" => "certain",
|
177 |
"Certaine Anett" => "certain",
|
178 |
"Certaine Anette" => "certain",
|
178 |
"Certaine Anette" => "certain",
|
179 |
"Certaine Valériane officinale" => "certain",
|
179 |
"Certaine Valériane officinale" => "certain",
|
180 |
"Certaine, Faite et confirmée par JM BERAUD" => "certain",
|
180 |
"Certaine, Faite et confirmée par JM BERAUD" => "certain",
|
181 |
"Certaine, par Jean Lebail" => "certain",
|
181 |
"Certaine, par Jean Lebail" => "certain",
|
182 |
"Certaine, subsp. minus" => "certain",
|
182 |
"Certaine, subsp. minus" => "certain",
|
183 |
"Certainea" => "certain",
|
183 |
"Certainea" => "certain",
|
184 |
"Certaineanno" => "certain",
|
184 |
"Certaineanno" => "certain",
|
185 |
"Certainearia n" => "certain",
|
185 |
"Certainearia n" => "certain",
|
186 |
"Certainee" => "certain",
|
186 |
"Certainee" => "certain",
|
187 |
"Certainej" => "certain",
|
187 |
"Certainej" => "certain",
|
188 |
"Certainel" => "certain",
|
188 |
"Certainel" => "certain",
|
189 |
"CertaineNom de travai" => "certain",
|
189 |
"CertaineNom de travai" => "certain",
|
190 |
"CertaineNom de travail" => "certain",
|
190 |
"CertaineNom de travail" => "certain",
|
191 |
"Certainesites" => "certain",
|
191 |
"Certainesites" => "certain",
|
192 |
"Certainesous-bois de feuillus en versant sud à sud-ouest" => "certain",
|
192 |
"Certainesous-bois de feuillus en versant sud à sud-ouest" => "certain",
|
193 |
"Certaineu" => "certain",
|
193 |
"Certaineu" => "certain",
|
194 |
"sure" => "certain",
|
194 |
"sure" => "certain",
|
195 |
"validée sur forum Naturalistes de l'ouest" => "certain",
|
195 |
"validée sur forum Naturalistes de l'ouest" => "certain",
|
196 |
"à confirmer" => "douteux",
|
196 |
"à confirmer" => "douteux",
|
197 |
"à approfondir" => "douteux",
|
197 |
"à approfondir" => "douteux",
|
198 |
"à cofirmer" => "douteux",
|
198 |
"à cofirmer" => "douteux",
|
199 |
"À confiermer" => "douteux",
|
199 |
"À confiermer" => "douteux",
|
200 |
"A confirlmer" => "douteux",
|
200 |
"A confirlmer" => "douteux",
|
201 |
"A confirmer" => "douteux",
|
201 |
"A confirmer" => "douteux",
|
202 |
"à confirmer vs. pumilum" => "douteux",
|
202 |
"à confirmer vs. pumilum" => "douteux",
|
203 |
"à conirmer" => "douteux",
|
203 |
"à conirmer" => "douteux",
|
204 |
"à vérifier" => "douteux",
|
204 |
"à vérifier" => "douteux",
|
205 |
"douteuse" => "douteux",
|
205 |
"douteuse" => "douteux",
|
206 |
"Douteuse (canadensis ?)" => "douteux",
|
206 |
"Douteuse (canadensis ?)" => "douteux",
|
207 |
"Douteuse ?" => "douteux",
|
207 |
"Douteuse ?" => "douteux",
|
208 |
"Douteuse à confirmer" => "douteux",
|
208 |
"Douteuse à confirmer" => "douteux",
|
209 |
"Douteuse peut-être cordata" => "douteux",
|
209 |
"Douteuse peut-être cordata" => "douteux",
|
210 |
"Douteuse, fleurs rouges" => "douteux",
|
210 |
"Douteuse, fleurs rouges" => "douteux",
|
211 |
"douteux" => "douteux",
|
211 |
"douteux" => "douteux",
|
212 |
"espèce bisannuelle mais non bien déterminée" => "douteux",
|
212 |
"espèce bisannuelle mais non bien déterminée" => "douteux",
|
213 |
"Incertaine" => "douteux",
|
213 |
"Incertaine" => "douteux",
|
214 |
"Pavot douteux" => "douteux",
|
214 |
"Pavot douteux" => "douteux",
|
215 |
"Potentille ansérine, supposé" => "douteux",
|
215 |
"Potentille ansérine, supposé" => "douteux",
|
216 |
"presque certaine" => "douteux",
|
216 |
"presque certaine" => "douteux",
|
217 |
"Quasi Certaine" => "douteux",
|
217 |
"Quasi Certaine" => "douteux",
|
218 |
"ssp déterminer" => "douteux",
|
218 |
"ssp déterminer" => "douteux",
|
219 |
"subsp à vérifier" => "douteux",
|
219 |
"subsp à vérifier" => "douteux",
|
220 |
"subsp. microphyllum ?" => "douteux",
|
220 |
"subsp. microphyllum ?" => "douteux",
|
221 |
"très douteuse" => "douteux",
|
221 |
"très douteuse" => "douteux",
|
222 |
"Très probable" => "douteux");
|
222 |
"Très probable" => "douteux");
|
223 |
foreach ($certitude as $valeur=>$saisie) {
|
223 |
foreach ($certitude as $valeur=>$saisie) {
|
224 |
$requete = 'UPDATE ".$this->bd_cel.".cel_obs SET commentaire = concat(commentaire, " Certitude : ", certitude), certitude = "'.$saisie.'" WHERE certitude ="'.$valeur.'"';
|
224 |
$requete = 'UPDATE ".$this->bd_cel.".cel_obs SET commentaire = concat(commentaire, " Certitude : ", certitude), certitude = "'.$saisie.'" WHERE certitude ="'.$valeur.'"';
|
225 |
$this->bdd->requeter($requete);
|
225 |
$this->bdd->requeter($requete);
|
226 |
echo "effectuée \n";
|
226 |
echo "effectuée \n";
|
227 |
}
|
227 |
}
|
228 |
$requete_verif = "SELECT certitude FROM ".$this->bd_cel.".cel_obs WHERE certitude NOT IN ('douteux', 'certain', 'à déterminer', '') and certitude is not NULL";
|
228 |
$requete_verif = "SELECT certitude FROM ".$this->bd_cel.".cel_obs WHERE certitude NOT IN ('douteux', 'certain', 'à déterminer', '') and certitude is not NULL";
|
229 |
$verif = $this->bdd->recupererTous($requete_verif);
|
229 |
$verif = $this->bdd->recupererTous($requete_verif);
|
230 |
if ($verif != array()) print_r($verif);
|
230 |
if ($verif != array()) print_r($verif);
|
231 |
}
|
231 |
}
|
232 |
|
232 |
|
233 |
private function supprimerCertitudeAutre() {
|
233 |
private function supprimerCertitudeAutre() {
|
234 |
echo "suppression des valeurs non compréhensible du champ certitude/identification";
|
234 |
echo "suppression des valeurs non compréhensible du champ certitude/identification";
|
235 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs
|
235 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs
|
236 |
SET commentaire = case isnull(commentaire) when 1 THEN certitude ELSE concat(commentaire, ' Certitude : ', certitude) END,
|
236 |
SET commentaire = case isnull(commentaire) when 1 THEN certitude ELSE concat(commentaire, ' Certitude : ', certitude) END,
|
237 |
certitude = '' WHERE `certitude` NOT IN ('douteux', 'certain', 'à déterminer', '') and certitude is not NULL";
|
237 |
certitude = '' WHERE `certitude` NOT IN ('douteux', 'certain', 'à déterminer', '') and certitude is not NULL";
|
238 |
$this->bdd->requeter($requete);
|
238 |
$this->bdd->requeter($requete);
|
239 |
echo "effectuée \n";
|
239 |
echo "effectuée \n";
|
240 |
$requete_verif = "SELECT certitude FROM ".$this->bd_cel.".cel_obs WHERE certitude NOT IN ('douteux', 'certain', 'aDeterminer', '') and certitude is not NULL";
|
240 |
$requete_verif = "SELECT certitude FROM ".$this->bd_cel.".cel_obs WHERE certitude NOT IN ('douteux', 'certain', 'aDeterminer', '') and certitude is not NULL";
|
241 |
$verif = $this->bdd->recupererTous($requete_verif);
|
241 |
$verif = $this->bdd->recupererTous($requete_verif);
|
242 |
if ($verif != array()) print_r($verif);
|
242 |
if ($verif != array()) print_r($verif);
|
243 |
}
|
243 |
}
|
244 |
|
244 |
|
245 |
private function unifierUtilisateur() {
|
245 |
private function unifierUtilisateur() {
|
246 |
echo "vérification de la présence de l'annuaire \n";
|
246 |
echo "vérification de la présence de l'annuaire \n";
|
247 |
$requete = "SELECT * FROM ".$this->bd_cel.".`users`;";
|
247 |
$requete = "SELECT * FROM ".$this->bd_cel.".`users`;";
|
248 |
$result = $this->bdd->requeter($requete);
|
248 |
$result = $this->bdd->requeter($requete);
|
249 |
if ($result === NULL) {echo $requete;
|
249 |
if ($result === NULL) {echo $requete;
|
250 |
echo "Il manque la table annuaire (à recopier de telaorg users\n";
|
250 |
echo "Il manque la table annuaire (à recopier de telaorg users\n";
|
251 |
exit;
|
251 |
exit;
|
252 |
}
|
252 |
}
|
253 |
|
253 |
|
254 |
echo "suppression de le colonne ordre \n";
|
254 |
echo "suppression de le colonne ordre \n";
|
255 |
$requete = "ALTER TABLE ".$this->bd_cel.".cel_obs DROP INDEX id_obs;";
|
255 |
$requete = "ALTER TABLE ".$this->bd_cel.".cel_obs DROP INDEX id_obs;";
|
256 |
$this->bdd->requeter($requete);
|
256 |
$this->bdd->requeter($requete);
|
257 |
$requete = "ALTER TABLE ".$this->bd_cel.".cel_obs DROP INDEX ordre;";
|
257 |
$requete = "ALTER TABLE ".$this->bd_cel.".cel_obs DROP INDEX ordre;";
|
258 |
$this->bdd->requeter($requete);
|
258 |
$this->bdd->requeter($requete);
|
259 |
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` DROP `ordre`;";
|
259 |
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` DROP `ordre`;";
|
260 |
$this->bdd->requeter($requete);
|
260 |
$this->bdd->requeter($requete);
|
261 |
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD pseudo varchar(250);";
|
261 |
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD pseudo varchar(250);";
|
262 |
$this->bdd->requeter($requete);
|
262 |
$this->bdd->requeter($requete);
|
263 |
|
263 |
|
264 |
echo "modification des observations ayant une adresse mail en identifiant";
|
264 |
echo "modification des observations ayant une adresse mail en identifiant";
|
265 |
$requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` join ".$this->bd_cel.".`users` ON `user_email` = ce_utilisateur SET `ce_utilisateur` = `ID`, pseudo = user_nicename,
|
265 |
$requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` join ".$this->bd_cel.".`users` ON `user_email` = ce_utilisateur SET `ce_utilisateur` = `ID`, pseudo = user_nicename,
|
266 |
`courriel_utilisateur` = `user_email` WHERE ce_utilisateur like '%@%'";
|
266 |
`courriel_utilisateur` = `user_email` WHERE ce_utilisateur like '%@%'";
|
267 |
$utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
|
267 |
$utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
|
268 |
|
268 |
|
269 |
echo "modification des observations ayant une adresse mail mais pas d'identifiant";
|
269 |
echo "modification des observations ayant une adresse mail mais pas d'identifiant";
|
270 |
$requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` join ".$this->bd_cel.".`users` ON `user_email` = courriel_utilisateur SET `ce_utilisateur` = `ID`, pseudo = user_nicename,
|
270 |
$requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` join ".$this->bd_cel.".`users` ON `user_email` = courriel_utilisateur SET `ce_utilisateur` = `ID`, pseudo = user_nicename,
|
271 |
`courriel_utilisateur` = `user_email` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
|
271 |
`courriel_utilisateur` = `user_email` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
|
272 |
OR ce_utilisateur = 0) and courriel_utilisateur like '%@%'";
|
272 |
OR ce_utilisateur = 0) and courriel_utilisateur like '%@%'";
|
273 |
$utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
|
273 |
$utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
|
274 |
|
274 |
|
275 |
echo "modification des observations ayant un identifiant";
|
275 |
echo "modification des observations ayant un identifiant";
|
276 |
$requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` join ".$this->bd_cel.".`users` ON ID = ce_utilisateur SET pseudo = user_nicename,
|
276 |
$requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` join ".$this->bd_cel.".`users` ON ID = ce_utilisateur SET pseudo = user_nicename,
|
277 |
`courriel_utilisateur` = `user_email` WHERE (ce_utilisateur IS NOT NULL OR LENGTH(ce_utilisateur) > 6) and (courriel_utilisateur is null or courriel_utilisateur='')";
|
277 |
`courriel_utilisateur` = `user_email` WHERE (ce_utilisateur IS NOT NULL OR LENGTH(ce_utilisateur) > 6) and (courriel_utilisateur is null or courriel_utilisateur='')";
|
278 |
$utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
|
278 |
$utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
|
279 |
|
279 |
|
280 |
echo "suppression des autres valeurs ce_utilisateur";
|
280 |
echo "suppression des autres valeurs ce_utilisateur";
|
281 |
$requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` SET ce_utilisateur = NULL WHERE ce_utilisateur IS NOT NULL AND LENGTH(ce_utilisateur) > 6";
|
281 |
$requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` SET ce_utilisateur = NULL WHERE ce_utilisateur IS NOT NULL AND LENGTH(ce_utilisateur) > 6";
|
282 |
$utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
|
282 |
$utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
|
283 |
|
283 |
|
284 |
echo "suppression des obs anonymes";
|
284 |
echo "suppression des obs anonymes";
|
285 |
$requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_obs` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
|
285 |
$requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_obs` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
|
286 |
OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%')";
|
286 |
OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%')";
|
287 |
$this->bdd->requeter($requete_anonyme);
|
287 |
$this->bdd->requeter($requete_anonyme);
|
288 |
|
288 |
|
289 |
$requete_verif = "SELECT `ce_utilisateur`, `prenom_utilisateur`, `nom_utilisateur`, `courriel_utilisateur` FROM ".$this->bd_cel.".cel_obs
|
289 |
$requete_verif = "SELECT `ce_utilisateur`, `prenom_utilisateur`, `nom_utilisateur`, `courriel_utilisateur` FROM ".$this->bd_cel.".cel_obs
|
290 |
WHERE ce_utilisateur IS NOT NULL OR LENGTH(ce_utilisateur) > 6";
|
290 |
WHERE ce_utilisateur IS NOT NULL OR LENGTH(ce_utilisateur) > 6";
|
291 |
$verif = $this->bdd->recupererTous($requete_verif);
|
291 |
$verif = $this->bdd->recupererTous($requete_verif);
|
292 |
if ($verif != array()) print_r($verif);
|
292 |
if ($verif != array()) print_r($verif);
|
293 |
echo "effectuée \n";
|
293 |
echo "effectuée \n";
|
294 |
}
|
294 |
}
|
295 |
|
295 |
|
296 |
private function supprimerImagesetTagAnonymes() {
|
296 |
private function supprimerImagesetTagAnonymes() {
|
297 |
echo "suppression des images anonymes";
|
297 |
echo "suppression des images anonymes";
|
298 |
$requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_images` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
|
298 |
$requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_images` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
|
299 |
OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%')";
|
299 |
OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%')";
|
300 |
$this->bdd->requeter($requete_anonyme);
|
300 |
$this->bdd->requeter($requete_anonyme);
|
301 |
echo "suppression des tags images anonymes";
|
301 |
echo "suppression des tags images anonymes";
|
302 |
$requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_arbre_mots_cles_images` WHERE id_utilisateur in (select ce_utilisateur FROM ".$this->bd_cel.".`cel_obs` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
|
302 |
$requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_arbre_mots_cles_images` WHERE id_utilisateur in (select ce_utilisateur FROM ".$this->bd_cel.".`cel_obs` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
|
303 |
OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%'))";
|
303 |
OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%'))";
|
304 |
$this->bdd->requeter($requete_anonyme);
|
304 |
$this->bdd->requeter($requete_anonyme);
|
305 |
echo "suppression des tags obs anonymes";
|
305 |
echo "suppression des tags obs anonymes";
|
306 |
$requete_create = "CREATE TABLE ".$this->bd_cel.".user_mot_cle_absent AS SELECT distinct id_utilisateur FROM ".$this->bd_cel.".cel_arbre_mots_cles_obs WHERE id_utilisateur not in
|
306 |
$requete_create = "CREATE TABLE ".$this->bd_cel.".user_mot_cle_absent AS SELECT distinct id_utilisateur FROM ".$this->bd_cel.".cel_arbre_mots_cles_obs WHERE id_utilisateur not in
|
307 |
(SELECT distinct id_utilisateur FROM ".$this->bd_cel.".cel_arbre_mots_cles_obs WHERE id_utilisateur in
|
307 |
(SELECT distinct id_utilisateur FROM ".$this->bd_cel.".cel_arbre_mots_cles_obs WHERE id_utilisateur in
|
308 |
(select distinct ce_utilisateur from ".$this->bd_cel.".cel_obs) or
|
308 |
(select distinct ce_utilisateur from ".$this->bd_cel.".cel_obs) or
|
309 |
id_utilisateur in (SELECT distinct courriel_utilisateur FROM ".$this->bd_cel.".cel_obs))";
|
309 |
id_utilisateur in (SELECT distinct courriel_utilisateur FROM ".$this->bd_cel.".cel_obs))";
|
310 |
$this->bdd->requeter($requete_create);
|
310 |
$this->bdd->requeter($requete_create);
|
311 |
$requete_index = "ALTER TABLE `user_mot_cle_absent` ADD PRIMARY KEY(`id_utilisateur`);";
|
311 |
$requete_index = "ALTER TABLE `user_mot_cle_absent` ADD PRIMARY KEY(`id_utilisateur`);";
|
312 |
$this->bdd->requeter($requete_index);
|
312 |
$this->bdd->requeter($requete_index);
|
313 |
$requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_arbre_mots_cles_obs` WHERE `id_utilisateur` in (SELECT * FROM `user_mot_cle_absent`);";
|
313 |
$requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_arbre_mots_cles_obs` WHERE `id_utilisateur` in (SELECT * FROM `user_mot_cle_absent`);";
|
314 |
$this->bdd->requeter($requete_anonyme);
|
314 |
$this->bdd->requeter($requete_anonyme);
|
315 |
$requete_anonyme = "DROP TABLE user_mot_cle_absent;";
|
315 |
$requete_anonyme = "DROP TABLE user_mot_cle_absent;";
|
316 |
$this->bdd->requeter($requete_anonyme);
|
316 |
$this->bdd->requeter($requete_anonyme);
|
317 |
$requete_anonyme = "UPDATE `cel_arbre_mots_cles_obs` a join ".$this->bd_cel.".cel_obs b on a.`id_utilisateur` = b.courriel_utilisateur SET a.`id_utilisateur` = b.ce_utilisateur
|
317 |
$requete_anonyme = "UPDATE `cel_arbre_mots_cles_obs` a join ".$this->bd_cel.".cel_obs b on a.`id_utilisateur` = b.courriel_utilisateur SET a.`id_utilisateur` = b.ce_utilisateur
|
318 |
WHERE b.ce_utilisateur IS NOT NULL AND b.ce_utilisateur != ''";
|
318 |
WHERE b.ce_utilisateur IS NOT NULL AND b.ce_utilisateur != ''";
|
319 |
$this->bdd->requeter($requete_anonyme);
|
319 |
$this->bdd->requeter($requete_anonyme);
|
320 |
$requete_anonyme = "DELETE FROM `cel_mots_cles_obs_liaison` WHERE `id_element_lie` not in (SELECT `id_observation` FROM `cel_obs`) OR `id_mot_cle` NOT IN (SELECT `id_mot_cle` FROM `cel_arbre_mots_cles_obs`);";
|
320 |
$requete_anonyme = "DELETE FROM `cel_mots_cles_obs_liaison` WHERE `id_element_lie` not in (SELECT `id_observation` FROM `cel_obs`) OR `id_mot_cle` NOT IN (SELECT `id_mot_cle` FROM `cel_arbre_mots_cles_obs`);";
|
321 |
$this->bdd->requeter($requete_anonyme);
|
321 |
$this->bdd->requeter($requete_anonyme);
|
322 |
}
|
322 |
}
|
323 |
|
323 |
|
324 |
private function unifierNomReferentiel() {
|
324 |
private function unifierNomReferentiel() {
|
325 |
echo "Uniformisation du nom de référentiel";
|
325 |
echo "Uniformisation du nom de référentiel";
|
326 |
$referentiels = array("BDTFX", "BDTRE", "BDTXA", "APD", "LBF", "ISFAN");
|
326 |
$referentiels = array("BDTFX", "BDTRE", "BDTXA", "APD", "LBF", "ISFAN");
|
327 |
foreach ($referentiels as $referentiel) {
|
327 |
foreach ($referentiels as $referentiel) {
|
328 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = '".$referentiel."' WHERE nom_referentiel like '".$referentiel."%'";
|
328 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = '".$referentiel."' WHERE nom_referentiel like '".$referentiel."%'";
|
329 |
$this->bdd->requeter($requete);
|
329 |
$this->bdd->requeter($requete);
|
330 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'autre' WHERE nom_sel_nn = '' or nom_sel_nn = '0'";
|
330 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'autre' WHERE nom_sel_nn = '' or nom_sel_nn = '0'";
|
331 |
$this->bdd->requeter($requete);
|
331 |
$this->bdd->requeter($requete);
|
332 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'APD' WHERE nom_referentiel like 'bdtao%'";
|
332 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'APD' WHERE nom_referentiel like 'bdtao%'";
|
333 |
$this->bdd->requeter($requete);
|
333 |
$this->bdd->requeter($requete);
|
334 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'BDTFX' WHERE nom_referentiel like 'bdnff%'";
|
334 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'BDTFX' WHERE nom_referentiel like 'bdnff%'";
|
335 |
$this->bdd->requeter($requete);
|
335 |
$this->bdd->requeter($requete);
|
336 |
echo "effectuée \n";
|
336 |
echo "effectuée \n";
|
337 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'autre' WHERE nom_referentiel IS NULL or nom_referentiel = ''";
|
337 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'autre' WHERE nom_referentiel IS NULL or nom_referentiel = ''";
|
338 |
$this->bdd->requeter($requete);
|
338 |
$this->bdd->requeter($requete);
|
339 |
echo "effectuée \n";
|
339 |
echo "effectuée \n";
|
340 |
}
|
340 |
}
|
341 |
$requete_verif = "SELECT nom_referentiel FROM ".$this->bd_cel.".cel_obs WHERE nom_referentiel NOT IN ('".implode("', '", $referentiels)."', 'autre')";
|
341 |
$requete_verif = "SELECT nom_referentiel FROM ".$this->bd_cel.".cel_obs WHERE nom_referentiel NOT IN ('".implode("', '", $referentiels)."', 'autre')";
|
342 |
$verif = $this->bdd->recupererTous($requete_verif);
|
342 |
$verif = $this->bdd->recupererTous($requete_verif);
|
343 |
if ($verif != array()) print_r($verif);
|
343 |
if ($verif != array()) print_r($verif);
|
344 |
}
|
344 |
}
|
345 |
|
345 |
|
346 |
private function supprimerInfosLiesObsInexistante() {
|
346 |
private function supprimerInfosLiesObsInexistante() {
|
347 |
echo "Supprimer infos liés à obs inexistante";
|
347 |
echo "Supprimer infos liés à obs inexistante";
|
348 |
$requete = "DELETE FROM ".$this->bd_cel.".`cel_obs_etendues` WHERE `id_observation` not in (select `id_observation` from ".$this->bd_cel.".cel_obs);";
|
348 |
$requete = "DELETE FROM ".$this->bd_cel.".`cel_obs_etendues` WHERE `id_observation` not in (select `id_observation` from ".$this->bd_cel.".cel_obs);";
|
349 |
$this->bdd->requeter($requete);
|
349 |
$this->bdd->requeter($requete);
|
350 |
$requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_obs_liaison` WHERE `id_element_lie` not in (select `id_observation` from ".$this->bd_cel.".cel_obs);";
|
350 |
$requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_obs_liaison` WHERE `id_element_lie` not in (select `id_observation` from ".$this->bd_cel.".cel_obs);";
|
351 |
$this->bdd->requeter($requete);
|
351 |
$this->bdd->requeter($requete);
|
352 |
$requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_obs_liaison` WHERE `id_mot_cle` not in (SELECT `id_mot_cle` FROM `cel_arbre_mots_cles_obs`);";
|
352 |
$requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_obs_liaison` WHERE `id_mot_cle` not in (SELECT `id_mot_cle` FROM `cel_arbre_mots_cles_obs`);";
|
353 |
$this->bdd->requeter($requete);
|
353 |
$this->bdd->requeter($requete);
|
354 |
$requete = "DELETE FROM ".$this->bd_cel.".`cel_images` WHERE `ce_observation` is not null and ".$this->bd_cel.".`ce_observation` not in (select id_observation from ".$this->bd_cel.".cel_obs)";
|
354 |
$requete = "DELETE FROM ".$this->bd_cel.".`cel_images` WHERE `ce_observation` is not null and ".$this->bd_cel.".`ce_observation` not in (select id_observation from ".$this->bd_cel.".cel_obs)";
|
355 |
$this->bdd->requeter($requete);
|
355 |
$this->bdd->requeter($requete);
|
356 |
$requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_images_liaison` WHERE `id_element_lie` not in (select `id_image` from ".$this->bd_cel.".cel_images);";
|
356 |
$requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_images_liaison` WHERE `id_element_lie` not in (select `id_image` from ".$this->bd_cel.".cel_images);";
|
357 |
$this->bdd->requeter($requete);
|
357 |
$this->bdd->requeter($requete);
|
358 |
$requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_images_liaison` WHERE `id_mot_cle` not in (SELECT `id_mot_cle` FROM `cel_arbre_mots_cles_images`);";
|
358 |
$requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_images_liaison` WHERE `id_mot_cle` not in (SELECT `id_mot_cle` FROM `cel_arbre_mots_cles_images`);";
|
359 |
$this->bdd->requeter($requete);
|
359 |
$this->bdd->requeter($requete);
|
360 |
echo "effectuée \n";
|
360 |
echo "effectuée \n";
|
361 |
}
|
361 |
}
|
362 |
|
362 |
|
363 |
private function verifierGeodatum() {
|
363 |
private function verifierGeodatum() {
|
364 |
echo "Uniformisation du geodatum";
|
364 |
echo "Uniformisation du geodatum";
|
365 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET geodatum = 'WGS84' WHERE (latitude IS NOT NULL or latitude != '0.00000') AND geodatum IS NULL";
|
365 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET geodatum = 'WGS84' WHERE (latitude IS NOT NULL or latitude != '0.00000') AND geodatum IS NULL";
|
366 |
$this->bdd->requeter($requete);
|
366 |
$this->bdd->requeter($requete);
|
367 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET geodatum = NULL WHERE (latitude IS NULL or latitude = '0.00000')";
|
367 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET geodatum = NULL WHERE (latitude IS NULL or latitude = '0.00000')";
|
368 |
$this->bdd->requeter($requete);
|
368 |
$this->bdd->requeter($requete);
|
369 |
echo "effectuée \n";
|
369 |
echo "effectuée \n";
|
370 |
}
|
370 |
}
|
371 |
|
371 |
|
372 |
private function verifierCodeInsee() {
|
372 |
private function verifierCodeInsee() {
|
373 |
echo "Vérification du code insee";
|
373 |
echo "Vérification du code insee";
|
374 |
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD `locality_consistency` INT(1) ;";
|
374 |
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD `locality_consistency` INT(1) ;";
|
375 |
$this->bdd->requeter($requete);
|
375 |
$this->bdd->requeter($requete);
|
376 |
|
376 |
|
377 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET locality_consistency = '0' WHERE
|
377 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET locality_consistency = '0' WHERE
|
378 |
((ce_zone_geo != 'INSEE-C:' and ce_zone_geo like 'INSEE-C:%') and code_insee_calcule != '') and
|
378 |
((ce_zone_geo != 'INSEE-C:' and ce_zone_geo like 'INSEE-C:%') and code_insee_calcule != '') and
|
379 |
replace(`ce_zone_geo`, 'INSEE-C:', '') != `code_insee_calcule`";
|
379 |
replace(`ce_zone_geo`, 'INSEE-C:', '') != `code_insee_calcule`";
|
380 |
$this->bdd->requeter($requete);
|
380 |
$this->bdd->requeter($requete);
|
381 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET locality_consistency = '1' WHERE
|
381 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET locality_consistency = '1' WHERE
|
382 |
((ce_zone_geo != 'INSEE-C:' and ce_zone_geo like 'INSEE-C:%') and code_insee_calcule != '') and
|
382 |
((ce_zone_geo != 'INSEE-C:' and ce_zone_geo like 'INSEE-C:%') and code_insee_calcule != '') and
|
383 |
replace(`ce_zone_geo`, 'INSEE-C:', '') = `code_insee_calcule`";
|
383 |
replace(`ce_zone_geo`, 'INSEE-C:', '') = `code_insee_calcule`";
|
384 |
$this->bdd->requeter($requete);
|
384 |
$this->bdd->requeter($requete);
|
385 |
|
385 |
|
386 |
$requete_verif = "SELECT `ce_zone_geo`, `code_insee_calcule`, `locality_consistency` FROM `cel_obs` WHERE `locality_consistency` IS NOT NULL";
|
386 |
$requete_verif = "SELECT `ce_zone_geo`, `code_insee_calcule`, `locality_consistency` FROM `cel_obs` WHERE `locality_consistency` IS NOT NULL";
|
387 |
$verif = $this->bdd->recupererTous($requete_verif);
|
387 |
$verif = $this->bdd->recupererTous($requete_verif);
|
388 |
if ($verif != array()) print_r($verif);
|
388 |
if ($verif != array()) print_r($verif);
|
389 |
echo "effectuée \n";
|
389 |
echo "effectuée \n";
|
390 |
}
|
390 |
}
|
391 |
|
391 |
|
392 |
private function analyserMotsCles(){
|
392 |
private function analyserMotsCles(){
|
393 |
echo "Input source \n";
|
393 |
echo "Input source \n";
|
394 |
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD `input_source` VARCHAR(15)";
|
394 |
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD `input_source` VARCHAR(15)";
|
395 |
$this->bdd->requeter($requete);
|
395 |
$this->bdd->requeter($requete);
|
396 |
|
396 |
|
397 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'plantnet' WHERE `mots_cles_texte` like '%plantnet%'";
|
397 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'plantnet' WHERE `mots_cles_texte` like '%plantnet%'";
|
398 |
$this->bdd->requeter($requete);
|
398 |
$this->bdd->requeter($requete);
|
399 |
|
399 |
|
400 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'autre' WHERE `mots_cles_texte` like '%MobileSauvages%'";
|
400 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'autre' WHERE `mots_cles_texte` like '%MobileSauvages%'";
|
401 |
$this->bdd->requeter($requete);
|
401 |
$this->bdd->requeter($requete);
|
402 |
|
402 |
|
403 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'widget' WHERE `mots_cles_texte` like '%Projets coopératifs%' and input_source = ''";
|
403 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'widget' WHERE `mots_cles_texte` like '%Projets coopératifs%' and input_source = ''";
|
404 |
$this->bdd->requeter($requete);
|
404 |
$this->bdd->requeter($requete);
|
405 |
|
405 |
|
406 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'widget' WHERE `mots_cles_texte` like '%widget%' and input_source = ''";
|
406 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'widget' WHERE `mots_cles_texte` like '%widget%' and input_source = ''";
|
407 |
$this->bdd->requeter($requete);
|
407 |
$this->bdd->requeter($requete);
|
408 |
|
408 |
|
409 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'cel' WHERE input_source = ''";
|
409 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'cel' WHERE input_source = ''";
|
410 |
$this->bdd->requeter($requete);
|
410 |
$this->bdd->requeter($requete);
|
411 |
|
411 |
|
412 |
echo "Suppression motcle du chemin \n";
|
412 |
echo "Suppression motcle du chemin \n";
|
413 |
$requete = "UPDATE ".$this->bd_cel.".`cel_arbre_mots_cles_obs` SET chemin = substr(`chemin`, 1, CHAR_LENGTH(chemin)-CHAR_LENGTH(`mot_cle`)-1)";
|
413 |
$requete = "UPDATE ".$this->bd_cel.".`cel_arbre_mots_cles_obs` SET chemin = substr(`chemin`, 1, CHAR_LENGTH(chemin)-CHAR_LENGTH(`mot_cle`)-1)";
|
414 |
$this->bdd->requeter($requete);
|
414 |
$this->bdd->requeter($requete);
|
415 |
|
415 |
|
416 |
$requete = "UPDATE ".$this->bd_cel.".`cel_arbre_mots_cles_images` SET chemin = substr(`chemin`, 1, CHAR_LENGTH(chemin)-CHAR_LENGTH(`mot_cle`)-1)";
|
416 |
$requete = "UPDATE ".$this->bd_cel.".`cel_arbre_mots_cles_images` SET chemin = substr(`chemin`, 1, CHAR_LENGTH(chemin)-CHAR_LENGTH(`mot_cle`)-1)";
|
417 |
$this->bdd->requeter($requete);
|
417 |
$this->bdd->requeter($requete);
|
418 |
|
418 |
|
419 |
echo "Certitude à certaine quand obs validée sur ip \n";
|
419 |
echo "Certitude à certaine quand obs validée sur ip \n";
|
420 |
$requete = "UPDATE ".$this->bd_cel.".`cel_obs` c left join
|
420 |
$requete = "UPDATE ".$this->bd_cel.".`cel_obs` c left join
|
421 |
(SELECT distinct `ce_observation`, `nom_sel_nn`
|
421 |
(SELECT distinct `ce_observation`, `nom_sel_nn`
|
422 |
FROM ".$this->bd_del.".`del_commentaire` WHERE `proposition_retenue` = 1) d on
|
422 |
FROM ".$this->bd_del.".`del_commentaire` WHERE `proposition_retenue` = 1) d on
|
423 |
`ce_observation` = `id_observation` SET `certitude` = 'certain'
|
423 |
`ce_observation` = `id_observation` SET `certitude` = 'certain'
|
424 |
WHERE (c.`mots_cles_texte` LIKE '%adeterminer%'
|
424 |
WHERE (c.`mots_cles_texte` LIKE '%adeterminer%'
|
425 |
or c.`certitude` = 'aDeterminer') and c.`nom_sel_nn` = d.`nom_sel_nn`";
|
425 |
or c.`certitude` = 'aDeterminer') and c.`nom_sel_nn` = d.`nom_sel_nn`";
|
426 |
$this->bdd->requeter($requete);
|
426 |
$this->bdd->requeter($requete);
|
427 |
|
427 |
|
428 |
echo "Certitude à douteux quand obs validée sur ip mais num_nom diff entre ip et cel \n";
|
428 |
echo "Certitude à douteux quand obs validée sur ip mais num_nom diff entre ip et cel \n";
|
429 |
$requete = "UPDATE ".$this->bd_cel.".`cel_obs` c left join
|
429 |
$requete = "UPDATE ".$this->bd_cel.".`cel_obs` c left join
|
430 |
(SELECT distinct `ce_observation`, `nom_sel_nn`
|
430 |
(SELECT distinct `ce_observation`, `nom_sel_nn`
|
431 |
FROM ".$this->bd_del.".`del_commentaire` WHERE `proposition_retenue` = 1 ) d on
|
431 |
FROM ".$this->bd_del.".`del_commentaire` WHERE `proposition_retenue` = 1 ) d on
|
432 |
`ce_observation` = `id_observation` SET `certitude` = 'douteux'
|
432 |
`ce_observation` = `id_observation` SET `certitude` = 'douteux'
|
433 |
WHERE (c.`mots_cles_texte` LIKE '%adeterminer%'
|
433 |
WHERE (c.`mots_cles_texte` LIKE '%adeterminer%'
|
434 |
or c.`certitude` = 'aDeterminer') and c.`nom_sel_nn` != d.`nom_sel_nn`";
|
434 |
or c.`certitude` = 'aDeterminer') and c.`nom_sel_nn` != d.`nom_sel_nn`";
|
435 |
$this->bdd->requeter($requete);
|
435 |
$this->bdd->requeter($requete);
|
436 |
|
436 |
|
437 |
echo "Certitude à aDeterminer quand obs non validée sur ip \n";
|
437 |
echo "Certitude à aDeterminer quand obs non validée sur ip \n";
|
438 |
$requete = "UPDATE ".$this->bd_cel.".`cel_obs` c SET `certitude` = 'aDeterminer'
|
438 |
$requete = "UPDATE ".$this->bd_cel.".`cel_obs` c SET `certitude` = 'aDeterminer'
|
439 |
WHERE c.`mots_cles_texte` LIKE '%adeterminer%' AND
|
439 |
WHERE c.`mots_cles_texte` LIKE '%adeterminer%' AND
|
440 |
(c.`certitude` = '' or c.certitude IS NULL)";
|
440 |
(c.`certitude` = '' or c.certitude IS NULL)";
|
441 |
$this->bdd->requeter($requete);
|
441 |
$this->bdd->requeter($requete);
|
442 |
|
442 |
|
443 |
$requete = "UPDATE ".$this->bd_cel.".`cel_obs` SET
|
443 |
$requete = "UPDATE ".$this->bd_cel.".`cel_obs` SET
|
444 |
`mots_cles_texte` = REPLACE(`mots_cles_texte`, 'aDeterminer,', '')
|
444 |
`mots_cles_texte` = REPLACE(`mots_cles_texte`, 'aDeterminer,', '')
|
445 |
WHERE `mots_cles_texte` LIKE '%adeterminer,%'";
|
445 |
WHERE `mots_cles_texte` LIKE '%adeterminer,%'";
|
446 |
$this->bdd->requeter($requete);
|
446 |
$this->bdd->requeter($requete);
|
447 |
|
447 |
|
448 |
|
448 |
|
449 |
}
|
449 |
}
|
450 |
|
450 |
|
451 |
|
451 |
|
452 |
|
452 |
|
453 |
private function changerSensible(){
|
453 |
private function changerSensible(){
|
454 |
echo "Sensible \n";
|
454 |
echo "Sensible \n";
|
455 |
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD `published_location` varchar(50)";
|
455 |
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD `published_location` varchar(50)";
|
456 |
$this->bdd->requeter($requete);
|
456 |
$this->bdd->requeter($requete);
|
457 |
|
457 |
|
458 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET published_location = 'localité' WHERE `mots_cles_texte` like '%sensible%'";
|
458 |
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET published_location = 'localité' WHERE `mots_cles_texte` like '%sensible%'";
|
459 |
$this->bdd->requeter($requete);
|
459 |
$this->bdd->requeter($requete);
|
460 |
}
|
460 |
}
|
461 |
}
|
461 |
}
|