60,6 → 60,10 |
$idUtilisateur = $this->getParametre('util'); |
$this->reductionMotsClesImagesUtilisateur($idUtilisateur); |
break; |
case 'reduireEtNormaliserMotsClesImages' : |
// ex: cli.php maintenance -a reduireEtNormaliserMotsClesImages |
$this->reduireEtNormaliserMotsClesImages(); |
break; |
default : |
$msg = "Erreur : la commande '$cmd' n'existe pas!\n". |
"Commandes existantes : regenererMotsClesTexteImages, regenererMotsClesTexteObs"; |
440,7 → 444,9 |
// Parcourt l'arbre des mots-cles images de l'utilisateur dont l'id est $idUtilisateur, et réduit tous ceux dont le chemin |
// n'est pas unique |
private function reductionMotsClesImagesUtilisateur($idUtilisateur) { |
$q1 = "SELECT id_mot_cle, chemin FROM cel_arbre_mots_cles_images WHERE id_utilisateur = $idUtilisateur;"; |
$q1 = "SELECT id_mot_cle, chemin, mot_cle, (LOCATE(mot_cle, chemin) != 0) as valide FROM cel_arbre_mots_cles_images" |
. " WHERE id_utilisateur = '$idUtilisateur'" |
. " ORDER BY chemin ASC, valide DESC;"; |
$r1 = $this->bdd->requeter($q1); |
|
$idsMotsCles = array(); |
468,5 → 474,115 |
} |
echo "$aTraiter groupes ont été réduits" . PHP_EOL; |
} |
|
private function reduireEtNormaliserMotsClesImages() { |
$this->reduireEtNormaliserMotsCles('cel_arbre_mots_cles_images', 'chemin', 'images'); |
} |
|
private function reduireEtNormaliserMotsCles($table, $colonne, $mode = "images") { |
echo "Suppression des accents dans la table $table, colonne $colonne ..."; |
$this->supprimerAccents($table, $colonne); |
echo "effectuée \n"; |
echo "Suppression des majuscules dans la table $table, colonne $colonne ..."; |
$this->supprimerMajuscules($table, $colonne); |
echo "effectuée \n"; |
echo "\n"; |
echo "Réduction de tous les mots clés $mode \n"; |
$req_utilisateurs = "SELECT DISTINCT id_utilisateur FROM ".$table; |
$utilisateurs = $this->bdd->recupererTous($req_utilisateurs); |
|
foreach($utilisateurs as $utilisateur) { |
echo "Utilisateur en cours de traitement : ".$utilisateur['id_utilisateur']." \n"; |
if($mode == "images") { |
$this->reductionMotsClesImagesUtilisateur($utilisateur['id_utilisateur']); |
} else { |
//TODO: créer cette fonction |
// $this->reductionMotsClesObsUtilisateur($utilisateur['id_utilisateur']); |
} |
} |
echo "Fin de la réduction des mots clés $mode \n"; |
} |
|
private function supprimerMajuscules($table, $colonne) { |
$requete = "UPDATE ".$table." SET ".$colonne." = LOWER(".$colonne.")"; |
$this->bdd->requeter($requete); |
} |
|
private function supprimerAccents($table, $colonne) { |
|
$requetes = array( |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Š','S')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'š','s')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ð','Dj')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ž','Z')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ž','z')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'À','A')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Á','A')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Â','A')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ã','A')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ä','A')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Å','A')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Æ','A')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ç','C')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'È','E')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'É','E')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ê','E')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ë','E')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ì','I')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Í','I')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Î','I')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ï','I')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ñ','N')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ò','O')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ó','O')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ô','O')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Õ','O')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ö','O')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ø','O')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ù','U')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ú','U')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Û','U')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ü','U')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Ý','Y')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'Þ','B')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ß','Ss')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'à','a')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'á','a')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'â','a')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ã','a')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ä','a')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'å','a')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'æ','a')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ç','c')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'è','e')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'é','e')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ê','e')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ë','e')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ì','i')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'í','i')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'î','i')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ï','i')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ð','o')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ñ','n')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ò','o')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ó','o')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ô','o')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'õ','o')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ö','o')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ø','o')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ù','u')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ú','u')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'û','u')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ý','y')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ý','y')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'þ','b')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ÿ','y')", |
"UPDATE ".$table." SET ".$colonne." = REPLACE(".$colonne.",'ƒ','f')", |
); |
|
foreach($requetes as $requete) { |
$this->bdd->requeter($requete); |
} |
} |
} |
?> |