/branches/topic-dbsingleton/jrest/lib/RechercheImage.php |
---|
48,11 → 48,11 |
if ($this->doitJoindreTableObs($criteres)) { |
$requete_recherche_images .= $this->fabriquerRequeteJointureObs(); |
$requete_recherche_images .= ($id_utilisateur != null) ? 'AND ci.ce_utilisateur = '.$this->proteger($id_utilisateur) : ''; |
$requete_recherche_images .= ($id_utilisateur != null) ? 'AND ci.ce_utilisateur = '.Cel::db()->proteger($id_utilisateur) : ''; |
} else { |
$requete_recherche_images .= 'FROM cel_images ci '; |
$requete_recherche_images .= ($id_utilisateur != null) ? 'WHERE ci.ce_utilisateur = '.$this->proteger($id_utilisateur) : ''; |
$requete_recherche_images .= ($id_utilisateur != null) ? 'WHERE ci.ce_utilisateur = '.Cel::db()->proteger($id_utilisateur) : ''; |
} |
$sous_requete_recherche = $this->fabriquerSousRequeteRecherche($id_utilisateur, $criteres); |
61,7 → 61,7 |
$requete_recherche_images .= ' ORDER BY '.$ordre.' '.$direction.' LIMIT '.$debut.','.$limite ; |
$resultats_images = array(); |
$resultats_images = $this->executerRequete($requete_recherche_images); |
$resultats_images = Cel::db()->executerRequete($requete_recherche_images); |
return $resultats_images; |
} |
77,11 → 77,11 |
if ($this->doitJoindreTableObs($criteres)) { |
$requete_recherche_images .= $this->fabriquerRequeteJointureObs(); |
$requete_recherche_images .= ($id_utilisateur != null) ? 'AND ci.ce_utilisateur = '.$this->proteger($id_utilisateur) : ''; |
$requete_recherche_images .= ($id_utilisateur != null) ? 'AND ci.ce_utilisateur = '.Cel::db()->proteger($id_utilisateur) : ''; |
} else { |
$requete_recherche_images .= 'FROM cel_images ci '; |
$requete_recherche_images .= ($id_utilisateur != null) ? 'WHERE ci.ce_utilisateur = '.$this->proteger($id_utilisateur) : ''; |
$requete_recherche_images .= ($id_utilisateur != null) ? 'WHERE ci.ce_utilisateur = '.Cel::db()->proteger($id_utilisateur) : ''; |
} |
$sous_requete_recherche = $this->fabriquerSousRequeteRecherche($id_utilisateur, $criteres); |
89,7 → 89,7 |
$requete_recherche_images .= $sous_requete_recherche; |
$nb_images = 0; |
$resultat_requete_nombre_images = $this->executerRequete($requete_recherche_images); |
$resultat_requete_nombre_images = Cel::db()->executerRequete($requete_recherche_images); |
if($resultat_requete_nombre_images && is_array($resultat_requete_nombre_images) && count($resultat_requete_nombre_images) > 0) { |
$nb_images = $resultat_requete_nombre_images[0]['nb_images']; |
119,7 → 119,7 |
$requete_table_liaison = 'SELECT id_observation FROM cel_obs_images WHERE id_image = '.$id_image; |
$resultats_liaisons_images = $this->executerRequete($requete_table_liaison); |
$resultats_liaisons_images = Cel::db()->executerRequete($requete_table_liaison); |
$ids_obs = ''; |
131,7 → 131,7 |
if(trim($ids_obs) != '') { |
$requete_obs_liees = 'SELECT * FROM cel_obs WHERE id_observation IN ('.$ids_obs.') AND ce_utilisateur ="'.$id_utilisateur.'"'; |
$resultat_obs_liees = $this->executerRequete($requete_obs_liees); |
$resultat_obs_liees = Cel::db()->executerRequete($requete_obs_liees); |
foreach($resultat_obs_liees as $obs_liee) |
{ |
171,7 → 171,7 |
foreach($mots_comment_liste as $mot_comment) |
{ |
$mot_comment = trim($mot_comment) ; |
$sous_requete .= 'ci.'.$nom.' LIKE '.$this->proteger('%'.$mot_comment.'%') ; |
$sous_requete .= 'ci.'.$nom.' LIKE '.Cel::db()->proteger('%'.$mot_comment.'%') ; |
$sous_requete .= ' AND ' ; |
} |
break; |
185,7 → 185,7 |
case "tampon": |
$ids_tampon = rtrim($valeur, ',') ; |
$sous_requete .= 'ci.id_images IN ( '.$this->proteger($ids_tampon).')' ; |
$sous_requete .= 'ci.id_images IN ( '.Cel::db()->proteger($ids_tampon).')' ; |
break; |
case "recherche": |
194,7 → 194,7 |
break; |
case "transmission": |
$sous_requete .= 'co.transmission = '.$this->proteger($valeur) ; |
$sous_requete .= 'co.transmission = '.Cel::db()->proteger($valeur) ; |
$sous_requete .= ' AND '; |
break; |
201,17 → 201,17 |
case "taxon": |
$valeur = str_replace('indetermine','null',$valeur); |
$sous_requete .= ' ('; |
$sous_requete .= 'co.nom_ret LIKE '.$this->proteger($valeur.'%') ; |
$sous_requete .= 'co.nom_ret LIKE '.Cel::db()->proteger($valeur.'%') ; |
$sous_requete .= ' OR ' ; |
$sous_requete .= 'co.nom_sel LIKE '.$this->proteger($valeur.'%') ; |
$sous_requete .= 'co.nom_sel LIKE '.Cel::db()->proteger($valeur.'%') ; |
$sous_requete .= ') AND ' ; |
break; |
case "auteur": |
$sous_requete .= '(ci.ce_utilisateur LIKE '.$this->proteger($valeur.'%').' OR '. |
'ci.courriel_utilisateur LIKE '.$this->proteger($valeur.'%').' OR '. |
'ci.nom_utilisateur LIKE '.$this->proteger($valeur.'%').' OR '. |
'ci.prenom_utilisateur LIKE '.$this->proteger($valeur.'%'). |
$sous_requete .= '(ci.ce_utilisateur LIKE '.Cel::db()->proteger($valeur.'%').' OR '. |
'ci.courriel_utilisateur LIKE '.Cel::db()->proteger($valeur.'%').' OR '. |
'ci.nom_utilisateur LIKE '.Cel::db()->proteger($valeur.'%').' OR '. |
'ci.prenom_utilisateur LIKE '.Cel::db()->proteger($valeur.'%'). |
') AND '; |
break; |
219,7 → 219,7 |
if($valeur == "NULL") { |
$sous_requete .= "(co.ce_zone_geo IS NULL OR co.ce_zone_geo = '')"; |
} else { |
$sous_requete .= '(co.ce_zone_geo LIKE '.(is_numeric($valeur) ? $this->proteger('INSEE-C:'.$valeur.'%') : $this->proteger($valeur)).') '; |
$sous_requete .= '(co.ce_zone_geo LIKE '.(is_numeric($valeur) ? Cel::db()->proteger('INSEE-C:'.$valeur.'%') : Cel::db()->proteger($valeur)).') '; |
} |
break; |
227,17 → 227,17 |
if($valeur == "NULL") { |
$sous_requete .= "(co.zone_geo IS NULL OR co.zone_geo = '')"; |
} else { |
$sous_requete .= '(co.zone_geo = '.$this->proteger($valeur).') '; |
$sous_requete .= '(co.zone_geo = '.Cel::db()->proteger($valeur).') '; |
} |
break; |
case "famille": |
$sous_requete .= 'co.famille = '.$this->proteger($valeur) ; |
$sous_requete .= 'co.famille = '.Cel::db()->proteger($valeur) ; |
$sous_requete .= ' AND ' ; |
break; |
default: |
$sous_requete .= 'ci.'.$nom.' = '.$this->proteger($valeur) ; |
$sous_requete .= 'ci.'.$nom.' = '.Cel::db()->proteger($valeur) ; |
$sous_requete .= ' AND ' ; |
break; |
} |
258,17 → 258,17 |
$chaine_recherche = str_replace(' ','_',$chaine_recherche); |
$requete = ' ('. |
'ci.nom_original LIKE '.$this->proteger($chaine_recherche.'%').' OR '. |
'co.nom_ret LIKE '.$this->proteger($chaine_recherche.'%').' OR '. |
'co.nom_sel LIKE '.$this->proteger($chaine_recherche.'%').' OR '. |
'co.zone_geo LIKE '.$this->proteger($chaine_recherche.'%').' OR '. |
'co.ce_zone_geo LIKE '.$this->proteger('%'.$chaine_recherche.'%').' OR '. |
'ci.nom_original LIKE '.Cel::db()->proteger($chaine_recherche.'%').' OR '. |
'co.nom_ret LIKE '.Cel::db()->proteger($chaine_recherche.'%').' OR '. |
'co.nom_sel LIKE '.Cel::db()->proteger($chaine_recherche.'%').' OR '. |
'co.zone_geo LIKE '.Cel::db()->proteger($chaine_recherche.'%').' OR '. |
'co.ce_zone_geo LIKE '.Cel::db()->proteger('%'.$chaine_recherche.'%').' OR '. |
//TODO: recherche multicriteres sur mots clés texte ne fonctionne pas à cause de la jointure |
//'ci.mots_cles_texte LIKE '.$this->proteger('%'.$chaine_recherche.'%').' OR '. |
'ci.ce_utilisateur LIKE '.$this->proteger($chaine_recherche.'%').' OR '. |
'ci.courriel_utilisateur LIKE '.$this->proteger($chaine_recherche.'%').' OR '. |
'ci.nom_utilisateur LIKE '.$this->proteger($chaine_recherche.'%').' OR '. |
'ci.prenom_utilisateur LIKE '.$this->proteger($chaine_recherche.'%').' '. |
//'ci.mots_cles_texte LIKE '.Cel::db()->proteger('%'.$chaine_recherche.'%').' OR '. |
'ci.ce_utilisateur LIKE '.Cel::db()->proteger($chaine_recherche.'%').' OR '. |
'ci.courriel_utilisateur LIKE '.Cel::db()->proteger($chaine_recherche.'%').' OR '. |
'ci.nom_utilisateur LIKE '.Cel::db()->proteger($chaine_recherche.'%').' OR '. |
'ci.prenom_utilisateur LIKE '.Cel::db()->proteger($chaine_recherche.'%').' '. |
') '; |
return $requete; |
281,7 → 281,7 |
$requete_recherche_date = ''; |
if(is_numeric($valeur) && $valeur != "00") { |
$requete_recherche_date = '('.$correspondance_champ[$intervalle].'(ci.date_prise_de_vue) = '.$this->proteger($valeur).') '; |
$requete_recherche_date = '('.$correspondance_champ[$intervalle].'(ci.date_prise_de_vue) = '.Cel::db()->proteger($valeur).') '; |
} else { |
$requete_recherche_date = '(ci.date_prise_de_vue IS NULL OR ci.date_prise_de_vue = "0000-00-00")'; |
} |
294,17 → 294,17 |
if (preg_match('/.*OU.*/', $mot_cle)) { |
$mots_cles_tab = explode('OU',$mot_cle); |
foreach($mots_cles_tab as $mot_cle_item) { |
$requete .= '(ci.mots_cles_texte LIKE '.$this->proteger('%'.$mot_cle_item.'%').') OR '; |
$requete .= '(ci.mots_cles_texte LIKE '.Cel::db()->proteger('%'.$mot_cle_item.'%').') OR '; |
} |
$requete = '('.rtrim($requete,'OR ').')'; |
} else if (preg_match('/.*ET.*/', $mot_cle)) { |
$mots_cles_tab = explode('ET',$mot_cle); |
foreach($mots_cles_tab as $mot_cle_item) { |
$requete .= '(ci.mots_cles_texte LIKE '.$this->proteger('%'.$mot_cle_item.'%').') AND '; |
$requete .= '(ci.mots_cles_texte LIKE '.Cel::db()->proteger('%'.$mot_cle_item.'%').') AND '; |
} |
$requete = '('.rtrim($requete, 'AND ').') '; |
} else { |
$requete = "(ci.mots_cles_texte LIKE ".$this->proteger('%'.$mot_cle.'%').') '; |
$requete = "(ci.mots_cles_texte LIKE ".Cel::db()->proteger('%'.$mot_cle.'%').') '; |
} |
$requete .= ' AND '; |
return $requete; |
326,9 → 326,9 |
public function obtenirCourrielUtilisateurPourIdImage($id_image) { |
$requete = 'SELECT courriel_utilisateur FROM cel_images WHERE '. |
'id_image = '.$this->proteger($id_image); |
'id_image = '.Cel::db()->proteger($id_image); |
$utilisateur_courriel = $this->executerRequete($requete); |
$utilisateur_courriel = Cel::db()->executerRequete($requete); |
$retour = false; |
if(!empty($utilisateur_courriel) && isset($utilisateur_courriel[0]['courriel_utilisateur'])) { |
343,7 → 343,7 |
'FROM cel_images_mots_cles '. |
'WHERE id_image = '.$id_image; |
return $this->executerRequete($requete_selection_mots_cles); |
return Cel::db()->executerRequete($requete_selection_mots_cles); |
} |
// TODO: fonction temporaire |
/branches/topic-dbsingleton/jrest/lib/GestionObservation.php |
---|
43,7 → 43,7 |
// important ! ne pas utiliser la fonction executerRequete qui renvoie une erreur si la requete contient des | (pipes) |
// ce qui peut arriver dans les commentaires |
// TODO: corriger la fonction ou bien continuer à utiliser executerRequeteSimple |
$resultat_ajout_observation = $this->executerRequeteSimple($requete_insertion_observation); |
$resultat_ajout_observation = Cel::db()->executerRequeteSimple($requete_insertion_observation); |
if ($resultat_ajout_observation === false) { |
$retour = false; |
65,9 → 65,9 |
public function renvoyerDernierOrdreUtilisePlusUn($utilisateur) { |
$requete_selection_dernier_ordre = "SELECT max(ordre) AS ordre FROM cel_obs ". |
"WHERE ce_utilisateur = ".$this->proteger($utilisateur); |
"WHERE ce_utilisateur = ".Cel::db()->proteger($utilisateur); |
$dernier_ordre = $this->executerRequete($requete_selection_dernier_ordre); |
$dernier_ordre = Cel::db()->executerRequete($requete_selection_dernier_ordre); |
$nouvel_ordre = 0; |
if (is_array($dernier_ordre) && count($dernier_ordre) > 0 && trim($dernier_ordre[0]['ordre']) != '') { |
85,10 → 85,10 |
public function renvoyerIdPourOrdre($utilisateur, $ordre) { |
$requete_selection_dernier_id = "SELECT id_observation FROM cel_obs ". |
"WHERE ce_utilisateur = ".$this->proteger($utilisateur)." ". |
"AND ordre = ".$this->proteger($ordre)." "; |
"WHERE ce_utilisateur = ".Cel::db()->proteger($utilisateur)." ". |
"AND ordre = ".Cel::db()->proteger($ordre)." "; |
$dernier_id = $this->executerRequete($requete_selection_dernier_id); |
$dernier_id = Cel::db()->executerRequete($requete_selection_dernier_id); |
return $dernier_id[0]['id_observation']; |
} |
109,12 → 109,12 |
$sous_requete_modification = $this->traiterParametresObservationEtConstruireSousRequeteMaj($parametres); |
$requete_modification .= $sous_requete_modification; |
$requete_modification .= " WHERE ordre IN (".$ordre.") AND ce_utilisateur = ".$this->proteger($utilisateur); |
$requete_modification .= " WHERE ordre IN (".$ordre.") AND ce_utilisateur = ".Cel::db()->proteger($utilisateur); |
// important ! ne pas utiliser la fonction executerRequete qui renvoie une erreur si la requete contient des | (pipes) |
// ce qui peut arriver dans les commentaires |
// TODO: corriger la fonction ou bien continuer à utiliser executerRequeteSimple |
$resultat_modification = $this->executerRequeteSimple($requete_modification); |
$resultat_modification = Cel::db()->executerRequeteSimple($requete_modification); |
if ($resultat_modification === false) { |
$retour = false; |
141,13 → 141,13 |
$sous_requete_modification = $this->traiterParametresObservationEtConstruireSousRequeteMaj($parametres); |
$requete_modification .= $sous_requete_modification; |
$requete_modification .= " WHERE id_observation = ".$this->proteger($id). |
" AND ce_utilisateur = ".$this->proteger($utilisateur)." ". |
$requete_modification .= " WHERE id_observation = ".Cel::db()->proteger($id). |
" AND ce_utilisateur = ".Cel::db()->proteger($utilisateur)." ". |
" AND transmission = 1"; |
// important ! ne pas utiliser la fonction executerRequete qui renvoie une erreur si la requete contient des | (pipes) |
// ce qui peut arriver dans les commentaires |
// TODO: corriger la fonction ou bien continuer à utiliser executerRequeteSimple |
$resultat_modification = $this->executerRequeteSimple($requete_modification); |
$resultat_modification = Cel::db()->executerRequeteSimple($requete_modification); |
if ($resultat_modification === false) { |
$retour = false; |
173,22 → 173,22 |
$ordre = implode(',', $tableau_ordre); |
$requete_ids_observations = 'SELECT id_observation as id_obs FROM cel_obs '. |
'WHERE ce_utilisateur = '.$this->proteger($utilisateur).' '. |
'WHERE ce_utilisateur = '.Cel::db()->proteger($utilisateur).' '. |
'AND ordre IN ('.$ordre.')'; |
$resultat_ids_observations = $this->requeter($requete_ids_observations); |
$resultat_ids_observations = Cel::db()->requeter($requete_ids_observations); |
$ids_obs = array(); |
if(is_array($resultat_ids_observations) && count($resultat_ids_observations) > 0) { |
foreach($resultat_ids_observations as $id_observation) { |
$ids_obs[] = $this->proteger($id_observation['id_obs']); |
$ids_obs[] = Cel::db()->proteger($id_observation['id_obs']); |
} |
$chaine_ids_obs = implode(',', $ids_obs); |
$requete_supression_observations = 'DELETE FROM cel_obs WHERE '. |
'ce_utilisateur = '.$this->proteger($utilisateur).' '. |
'ce_utilisateur = '.Cel::db()->proteger($utilisateur).' '. |
'AND id_observation IN ('.$chaine_ids_obs.')'; |
$resultat_suppression_observations = $this->executerRequeteSimple($requete_supression_observations); |
$resultat_suppression_observations = Cel::db()->executerRequeteSimple($requete_supression_observations); |
// TODO: Faire la suppression des mots clés |
// et des liaisons obs images dans une ou des fonctions à part |
198,10 → 198,10 |
else |
{ |
$requete_supression_lien_obs_images = 'DELETE FROM cel_obs_images WHERE '. |
'id_utilisateur = '.$this->proteger($utilisateur).' '. |
'id_utilisateur = '.Cel::db()->proteger($utilisateur).' '. |
'AND id_observation IN ('.$chaine_ids_obs.')'; |
$resultat_suppression_liens = $this->executerRequeteSimple($requete_supression_lien_obs_images); |
$resultat_suppression_liens = Cel::db()->executerRequeteSimple($requete_supression_lien_obs_images); |
if ($resultat_suppression_liens === false) { |
$this->logger("CEL_bugs","Erreur de suppression d'une liste de liaison entre observations et images : ".$requete_supression_lien_obs_images); |
214,7 → 214,7 |
$requete_supression_lien_mots_cles = 'DELETE FROM cel_obs_mots_cles WHERE '. |
'id_observation in ('.$chaine_ids_obs.')'; |
$resultat_suppression_mots_cles = $this->executerRequeteSimple($requete_supression_lien_mots_cles); |
$resultat_suppression_mots_cles = Cel::db()->executerRequeteSimple($requete_supression_lien_mots_cles); |
if ($resultat_suppression_mots_cles === false) { |
$this->logger("CEL_bugs","Erreur de suppression d'une liste de mots clés d'observation(s) : ".$resultat_suppression_mots_cles); |
} |
243,8 → 243,8 |
$nouvel_ordre = $this->renvoyerDernierOrdreUtilisePlusUn($id_utilisateur); |
// Recuperation relevés associés a la session |
$requete_selection_releves_temporaires = 'SELECT ordre FROM cel_obs WHERE ce_utilisateur = '.$this->proteger($ancien_id).' ORDER BY ordre'; |
$resultat_releves_temporaires = $this->executerRequete($requete_selection_releves_temporaires); |
$requete_selection_releves_temporaires = 'SELECT ordre FROM cel_obs WHERE ce_utilisateur = '.Cel::db()->proteger($ancien_id).' ORDER BY ordre'; |
$resultat_releves_temporaires = Cel::db()->executerRequete($requete_selection_releves_temporaires); |
$reussite = true; |
if(is_array($resultat_releves_temporaires)) { |
251,11 → 251,11 |
foreach($resultat_releves_temporaires as $releve_temporaire) { |
$requete_migration_releve = 'UPDATE cel_obs SET '. |
'ce_utilisateur = '.$this->proteger($id_utilisateur).', '. |
'ce_utilisateur = '.Cel::db()->proteger($id_utilisateur).', '. |
'ordre = '.$nouvel_ordre.' '. |
'WHERE ce_utilisateur = '.$ancien_id.' '. |
'AND ordre = '.$releve_temporaire['ordre']; |
$migration_releve = $this->executerRequeteSimple($requete_migration_releve); |
$migration_releve = Cel::db()->executerRequeteSimple($requete_migration_releve); |
//TODO: meilleure vérification |
if($migration_releve === false) { |
278,13 → 278,13 |
// ATTENTION : cette fonction suppose que l'utilisateur n'ai pas déjà d'observations dans le CEL |
// avec l'identifiant $id_utilisateur ce qui est normalement le cas |
$requete_migration_releve = 'UPDATE cel_obs SET '. |
'ce_utilisateur = '.$this->proteger($infos_utilisateur['id_utilisateur']).', '. |
'prenom_utilisateur = '.$this->proteger($infos_utilisateur['prenom']).', '. |
'nom_utilisateur = '.$this->proteger($infos_utilisateur['nom']).', '. |
'courriel_utilisateur = '.$this->proteger($infos_utilisateur['courriel']).' '. |
'WHERE ce_utilisateur = '.$this->proteger($mail_utilisateur).' '; |
'ce_utilisateur = '.Cel::db()->proteger($infos_utilisateur['id_utilisateur']).', '. |
'prenom_utilisateur = '.Cel::db()->proteger($infos_utilisateur['prenom']).', '. |
'nom_utilisateur = '.Cel::db()->proteger($infos_utilisateur['nom']).', '. |
'courriel_utilisateur = '.Cel::db()->proteger($infos_utilisateur['courriel']).' '. |
'WHERE ce_utilisateur = '.Cel::db()->proteger($mail_utilisateur).' '; |
$migration_releve = $this->executerRequeteSimple($requete_migration_releve); |
$migration_releve = Cel::db()->executerRequeteSimple($requete_migration_releve); |
return $migration_releve; |
} |
437,7 → 437,7 |
if (trim($valeur) == "" || trim($valeur) == "null") { |
$valeur = "NULL"; |
} else { |
$valeur = $this->proteger($valeur); |
$valeur = Cel::db()->proteger($valeur); |
} |
$champs .= $cle.', '; |
475,7 → 475,7 |
if (trim($valeur) == "" || trim($valeur) == "null") { |
$valeur = "NULL"; |
} else { |
$valeur = $this->proteger($valeur); |
$valeur = Cel::db()->proteger($valeur); |
} |
$sous_requete .= $cle." = ".$valeur.", "; |
/branches/topic-dbsingleton/jrest/lib/GestionChampsEtendus.php |
---|
49,14 → 49,14 |
* @return bool |
*/ |
public function existe($id_element_lie, $cle) { |
$id = $this->proteger($id_element_lie); |
$cle = $this->proteger($cle); |
$id = Cel::db()->proteger($id_element_lie); |
$cle = Cel::db()->proteger($cle); |
$requete = 'SELECT COUNT(*) >= 1 AS existe '. |
"FROM {$this->table_champs_etendus} ". |
"WHERE {$this->champ_id} = $id ". |
" AND cle = $cle "; |
$resultat = $this->executerRequete($requete); |
$resultat = Cel::db()->executerRequete($requete); |
return ($resultat[0]['existe'] == '1'); |
} |
67,9 → 67,9 |
* @return array tableau associatif des champs de la table etendu |
*/ |
public function consulter($id_element_lie) { |
$id = $this->proteger($id_element_lie); |
$id = Cel::db()->proteger($id_element_lie); |
$requete = "SELECT * FROM {$this->table_champs_etendus} WHERE {$this->champ_id} = $id "; |
$resultat = $this->executerRequete($requete); |
$resultat = Cel::db()->executerRequete($requete); |
return $resultat; |
} |
88,7 → 88,7 |
$ids = implode(',', $ids_element_lies); |
$requete = "SELECT * FROM {$this->table_champs_etendus} WHERE {$this->champ_id} IN ($ids) "; |
$resultats = $this->executerRequete($requete); |
$resultats = Cel::db()->executerRequete($requete); |
foreach ($resultats as &$ligne) { |
$id_element = $ligne[$this->champ_id]; |
115,10 → 115,10 |
* @return bool true si l'ajout a eu lieu |
*/ |
public function ajouter(ChampEtendu $champ_etendu) { |
$id = $this->proteger($champ_etendu->id); |
$cle = $this->proteger($champ_etendu->cle); |
$label = $this->proteger($champ_etendu->label); |
$valeur = $this->proteger($champ_etendu->valeur); |
$id = Cel::db()->proteger($champ_etendu->id); |
$cle = Cel::db()->proteger($champ_etendu->cle); |
$label = Cel::db()->proteger($champ_etendu->label); |
$valeur = Cel::db()->proteger($champ_etendu->valeur); |
$requete = "INSERT INTO {$this->table_champs_etendus} ". |
"( {$this->champ_id}, cle, label, valeur) ". |
127,7 → 127,7 |
// la partie on duplicate key est spécifique mysql mais il sera facile de s'en passer le jour |
// où l'on change de sgbd |
$ajout = $this->executerRequeteSimple($requete); |
$ajout = Cel::db()->executerRequeteSimple($requete); |
return ($ajout !== false); |
} |
141,10 → 141,10 |
public function ajouterParLots(Array $champs_etendus) { |
$lignes = array(); |
foreach ($champs_etendus as $champ_etendu) { |
$id = $this->proteger($champ_etendu->id); |
$cle = $this->proteger($champ_etendu->cle); |
$label = $this->proteger($champ_etendu->label); |
$valeur = $this->proteger($champ_etendu->valeur); |
$id = Cel::db()->proteger($champ_etendu->id); |
$cle = Cel::db()->proteger($champ_etendu->cle); |
$label = Cel::db()->proteger($champ_etendu->label); |
$valeur = Cel::db()->proteger($champ_etendu->valeur); |
$lignes[] = "($id, $cle, $label, $valeur)"; |
} |
157,7 → 157,7 |
// la partie on duplicate key est spécifique mysql mais il sera facile de s'en passer le jour |
// où l'on change de sgbd |
$ajout = $this->executerRequeteSimple($requete); |
$ajout = Cel::db()->executerRequeteSimple($requete); |
return ($ajout !== false); |
} |
168,10 → 168,10 |
* @return bool true si la modification a eu lieu |
*/ |
public function modifier(ChampEtendu $champ_etendu) { |
$id = $this->proteger($champ_etendu->id); |
$cle = $this->proteger($champ_etendu->cle); |
$label = $this->proteger($champ_etendu->label); |
$valeur = $this->proteger($champ_etendu->valeur); |
$id = Cel::db()->proteger($champ_etendu->id); |
$cle = Cel::db()->proteger($champ_etendu->cle); |
$label = Cel::db()->proteger($champ_etendu->label); |
$valeur = Cel::db()->proteger($champ_etendu->valeur); |
$requete = "UPDATE {$this->table_champs_etendus} ". |
"SET label = $label, valeur = $valeur ". |
178,7 → 178,7 |
"WHERE cle = $cle". |
" AND {$this->champ_id} = $id "; |
$modif = $this->executerRequeteSimple($requete); |
$modif = Cel::db()->executerRequeteSimple($requete); |
return ($modif !== false); |
} |
190,10 → 190,10 |
* @return bool |
*/ |
public function supprimer($id_element_lie, $cle) { |
$id = $this->proteger($id_element_lie); |
$cle = $this->proteger($cle); |
$id = Cel::db()->proteger($id_element_lie); |
$cle = Cel::db()->proteger($cle); |
$requete = "DELETE FROM {$this->table_champs_etendus} WHERE cle = $cle AND {$this->champ_id} = $id "; |
$suppr = $this->executerRequeteSimple($requete); |
$suppr = Cel::db()->executerRequeteSimple($requete); |
return ($suppr !== false); |
} |
204,9 → 204,9 |
* @return bool |
*/ |
public function vider($id_element_lie) { |
$id = $this->proteger($id_element_lie); |
$id = Cel::db()->proteger($id_element_lie); |
$requete = "DELETE FROM {$this->table_champs_etendus} WHERE {$this->champ_id} = $id "; |
$suppr = $this->executerRequeteSimple($requete); |
$suppr = Cel::db()->executerRequeteSimple($requete); |
return ($suppr !== false); |
} |
219,7 → 219,7 |
public function viderParLots($ids_elements_lies) { |
$ids = $this->protegerTableau($ids_elements_lies); |
$requete = "DELETE FROM {$this->table_champs_etendus} WHERE {$this->champ_id} IN (".implode(',',$ids).") "; |
$suppr = $this->executerRequeteSimple($requete); |
$suppr = Cel::db()->executerRequeteSimple($requete); |
return ($suppr !== false); |
} |
234,7 → 234,7 |
if(!empty($ids_elements_lies)) { |
$ids = $this->protegerTableau($ids_elements_lies); |
$requete = "SELECT cle FROM {$this->table_champs_etendus} WHERE {$this->champ_id} IN (".implode(',',$ids).") "; |
$cles = $this->executerRequete($requete); |
$cles = Cel::db()->executerRequete($requete); |
foreach($cles as &$cle) { |
$cles_fmt[] = $cle['cle']; |
} |
/branches/topic-dbsingleton/jrest/lib/RechercheInfosTaxon.php |
---|
48,9 → 48,9 |
" , eflore_naturaliste_intitule_abreviation AS auteur_mex ". |
" , eflore_naturaliste_intitule_abreviation AS auteur_m ". |
" , eflore_selection_nom". |
" WHERE en_id_version_projet_nom = '25' AND en_nom_genre LIKE ".$this->proteger($genre.'%'). |
" WHERE en_id_version_projet_nom = '25' AND en_nom_genre LIKE ".Cel::db()->proteger($genre.'%'). |
" AND en_ce_rang > 160 " . |
" AND en_epithete_espece like ".$this->proteger($espece.'%')." AND en_ce_rang = enrg_id_rang " . |
" AND en_epithete_espece like ".Cel::db()->proteger($espece.'%')." AND en_ce_rang = enrg_id_rang " . |
" AND en_ce_auteur_basio_ex = auteur_bex.enaia_id_intitule_naturaliste_abrege ". |
" AND en_ce_auteur_basio = auteur_b.enaia_id_intitule_naturaliste_abrege ". |
" AND en_ce_auteur_modif_ex = auteur_mex.enaia_id_intitule_naturaliste_abrege ". |
68,13 → 68,13 |
if ((strlen($genre) >= 1)) { |
$requete_recherche = "SELECT DISTINCT en_nom_genre, en_id_nom, 0 as esn_ce_statut FROM eflore_nom WHERE en_id_version_projet_nom = '25'" . |
"AND en_ce_rang = 160 " . |
"AND en_nom_genre LIKE ".$this->proteger($genre.'%')." ORDER BY esn_ce_statut, en_nom_genre LIMIT 50"; |
"AND en_nom_genre LIKE ".Cel::db()->proteger($genre.'%')." ORDER BY esn_ce_statut, en_nom_genre LIMIT 50"; |
} |
} |
} |
if ($requete_recherche != '') { |
$resultat_recherche = $this->executerRequete($requete_recherche); |
$resultat_recherche = Cel::db()->executerRequete($requete_recherche); |
if (is_array($resultat_recherche)) { |
foreach ($resultat_recherche as $ligne) { |
141,7 → 141,7 |
" , eflore_naturaliste_intitule_abreviation AS auteur_mex ". |
" , eflore_naturaliste_intitule_abreviation AS auteur_m ". |
" ,eflore_selection_nom a, eflore_selection_nom b". |
" WHERE a.esn_id_nom= ".$this->proteger($numNom). |
" WHERE a.esn_id_nom= ".Cel::db()->proteger($numNom). |
" AND a.esn_id_version_projet_taxon = 25 ". |
" AND a.esn_id_taxon=b.esn_id_taxon ". |
" AND b.esn_ce_statut=3 ". |
155,7 → 155,7 |
" AND a.esn_id_version_projet_taxon=en_id_version_projet_nom "; |
$resultat_infos_complementaires = $this->executerRequete($requete_infos_complementaires); |
$resultat_infos_complementaires = Cel::db()->executerRequete($requete_infos_complementaires); |
return $resultat_infos_complementaires; |
} |
184,7 → 184,7 |
" AND en_ce_auteur_modif = auteur_m.enaia_id_intitule_naturaliste_abrege ". |
" AND esn_id_version_projet_taxon=en_id_version_projet_nom "; |
$resultat_infos_complementaires = $this->executerRequete($requete_infos_complementaires); |
$resultat_infos_complementaires = Cel::db()->executerRequete($requete_infos_complementaires); |
return $resultat_infos_complementaires; |
} |
202,7 → 202,7 |
'eni_intitule_nom LIKE "'.$nom_saisi.'%" '. |
'ORDER BY LENGTH(eni_intitule_nom)'; |
$resultat_infos_comp_sur_nom = $this->executerRequete($requete_infos_comp_sur_nom); |
$resultat_infos_comp_sur_nom = Cel::db()->executerRequete($requete_infos_comp_sur_nom); |
if (is_array($resultat_infos_comp_sur_nom)) { |
foreach ($resultat_infos_comp_sur_nom as $ligne) { |
232,7 → 232,7 |
" AND en_id_nom = esn_id_nom ". |
" AND esn_id_version_projet_taxon=en_id_version_projet_nom "; |
$resultat_recherche_famille = $this->executerRequete($requete_famille); |
$resultat_recherche_famille = Cel::db()->executerRequete($requete_famille); |
if (!is_array($resultat_recherche_famille) || count($resultat_recherche_famille) == 0) { |
$resultat_recherche_famille = array('en_ce_rang' => 'fin'); |
247,7 → 247,7 |
$requete_num_tax = "SELECT DISTINCT b.esn_id_taxon FROM eflore_nom, eflore_nom_rang," . |
" eflore_selection_nom a, eflore_selection_nom b". |
" WHERE a.esn_id_nom= ".$this->proteger($num_nom). |
" WHERE a.esn_id_nom= ".Cel::db()->proteger($num_nom). |
" AND a.esn_id_version_projet_taxon = 25 ". |
" AND a.esn_id_taxon=b.esn_id_taxon ". |
" AND b.esn_ce_statut=3 ". |
256,7 → 256,7 |
" AND en_id_nom = b.esn_id_nom" . |
" AND a.esn_id_version_projet_taxon=en_id_version_projet_nom "; |
$res_num_nom = $this->executerRequete($requete_num_tax); |
$res_num_nom = Cel::db()->executerRequete($requete_num_tax); |
$nt = null; |
if (is_array($res_num_nom) && count($res_num_nom) > 0) { |
269,13 → 269,13 |
public function taxonEstPresentDansDepartement($num_taxon,$code_departement) { |
$requete_presence_taxon = "SELECT ecd_ce_taxon FROM eflore_zg, eflore_chorologie_donnee ". |
"WHERE ecd_ce_taxon = ".$this->proteger($num_taxon)." ". |
"AND ezg_code = ".$this->proteger($code_departement)." ". |
"WHERE ecd_ce_taxon = ".Cel::db()->proteger($num_taxon)." ". |
"AND ezg_code = ".Cel::db()->proteger($code_departement)." ". |
"AND ecd_ce_zone_geo = ezg_id_zone_geo ". |
"AND ezg_id_projet_zg = ecd_ce_version_projet_zg ". |
"AND ecd_ce_version_projet_taxon=25"; |
$resultat_presence_taxon = $this->executerRequete($requete_presence_taxon); |
$resultat_presence_taxon = Cel::db()->executerRequete($requete_presence_taxon); |
$presence_taxon = (is_array($resultat_presence_taxon) && count($resultat_presence_taxon) > 0); |
289,12 → 289,12 |
if (isset($nom_latin_decoupe['infra']) && $nom_latin_decoupe['infra']!="") { |
$requete="SELECT DISTINCT en_id_nom, esn_ce_statut" . |
" FROM eflore_nom, eflore_nom_rang, eflore_selection_nom " . |
" WHERE en_id_version_projet_nom = '25' AND en_nom_genre = ".$this->proteger($nom_latin_decoupe['genus'])." " . |
" AND enrg_abreviation_rang = ".$this->proteger($nom_latin_decoupe['infra_type'])." " . |
" AND en_epithete_infra_specifique = ".$this->proteger($nom_latin_decoupe['infra'])." " . |
" WHERE en_id_version_projet_nom = '25' AND en_nom_genre = ".Cel::db()->proteger($nom_latin_decoupe['genus'])." " . |
" AND enrg_abreviation_rang = ".Cel::db()->proteger($nom_latin_decoupe['infra_type'])." " . |
" AND en_epithete_infra_specifique = ".Cel::db()->proteger($nom_latin_decoupe['infra'])." " . |
" AND esn_id_nom= en_id_nom ". |
" AND esn_id_version_projet_taxon=en_id_version_projet_nom " . |
" AND en_epithete_espece = ".$this->proteger($nom_latin_decoupe['species'])." AND en_ce_rang = enrg_id_rang " . |
" AND en_epithete_espece = ".Cel::db()->proteger($nom_latin_decoupe['species'])." AND en_ce_rang = enrg_id_rang " . |
" ORDER BY esn_ce_statut ". |
" LIMIT 1"; |
} |
301,17 → 301,17 |
else { // espece (on privilegie les noms retenu cf tri par esn_ce_statut) |
$requete="SELECT DISTINCT en_id_nom, esn_ce_statut" . |
" FROM eflore_nom, eflore_nom_rang, eflore_selection_nom " . |
" WHERE en_id_version_projet_nom = '25' AND en_nom_genre = ".$this->proteger($nom_latin_decoupe['genus'])." " . |
" WHERE en_id_version_projet_nom = '25' AND en_nom_genre = ".Cel::db()->proteger($nom_latin_decoupe['genus'])." " . |
" AND enrg_abreviation_rang = 'sp.' " . |
" AND esn_id_nom= en_id_nom ". |
" AND esn_id_version_projet_taxon=en_id_version_projet_nom " . |
" AND en_epithete_espece = ".$this->proteger($nom_latin_decoupe['species'])." AND en_ce_rang = enrg_id_rang " . |
" AND en_epithete_espece = ".Cel::db()->proteger($nom_latin_decoupe['species'])." AND en_ce_rang = enrg_id_rang " . |
" ORDER BY esn_ce_statut ". |
" LIMIT 1"; |
} |
$resultat = $this->executerRequete($requete); |
$resultat = Cel::db()->executerRequete($requete); |
$retour = array(); |
if (is_array($resultat) && count($resultat) > 0) { |
/branches/topic-dbsingleton/jrest/lib/RechercheObservation.php |
---|
23,13 → 23,13 |
$ordre = array_map(array($this,'proteger'), $ordre); |
$requete_selection_id .= ' IN ('.implode(',',$ordre).') '; |
} else { |
$requete_selection_id .= ' = '.$this->proteger($ordre).' '; |
$requete_selection_id .= ' = '.Cel::db()->proteger($ordre).' '; |
} |
$requete_selection_id .= ' AND ce_utilisateur = '.$this->proteger($id_utilisateur). |
$requete_selection_id .= ' AND ce_utilisateur = '.Cel::db()->proteger($id_utilisateur). |
' ORDER BY id_observation'; |
$resultat_ids = $this->executerRequete($requete_selection_id); |
$resultat_ids = Cel::db()->executerRequete($requete_selection_id); |
$ids = array(); |
if (is_array($resultat_ids)) { |
45,7 → 45,7 |
$requete_selection_observations = 'SELECT * FROM cel_obs '; |
if ($id_utilisateur != null) { |
$requete_selection_observations .= 'WHERE ce_utilisateur = '.$this->proteger($id_utilisateur).' AND '; |
$requete_selection_observations .= 'WHERE ce_utilisateur = '.Cel::db()->proteger($id_utilisateur).' AND '; |
} else if(count($criteres) > 0) { |
$requete_selection_observations .= 'WHERE '; |
} |
67,7 → 67,7 |
public function get() { |
if(!$this->requete_selection_observations) return FALSE; |
return $this->executerRequete($this->requete_selection_observations); |
return Cel::db()->executerRequete($this->requete_selection_observations); |
} |
public function compterObservations($id_utilisateur = null, $criteres = array()) { |
74,7 → 74,7 |
$requete_selection_observations = 'SELECT COUNT(*) as nb_obs FROM cel_obs '; |
if ($id_utilisateur != null) { |
$requete_selection_observations .= 'WHERE ce_utilisateur = '.$this->proteger($id_utilisateur).' AND '; |
$requete_selection_observations .= 'WHERE ce_utilisateur = '.Cel::db()->proteger($id_utilisateur).' AND '; |
} else if(count($criteres) > 0) { |
$requete_selection_observations .= 'WHERE '; |
} |
85,7 → 85,7 |
$requete_selection_observations = rtrim($requete_selection_observations, 'AND '); |
$nb_obs = '0'; |
$resultat_requete_nombre_observations = $this->executerRequete($requete_selection_observations); |
$resultat_requete_nombre_observations = Cel::db()->executerRequete($requete_selection_observations); |
if($resultat_requete_nombre_observations && is_array($resultat_requete_nombre_observations) && count($resultat_requete_nombre_observations) > 0) { |
$nb_obs = $resultat_requete_nombre_observations[0]['nb_obs']; |
128,10 → 128,10 |
} |
public function obtenirCourrielUtilisateurPourIdObs($id_obs) { |
$id_obs = $this->proteger($id_obs); |
$id_obs = Cel::db()->proteger($id_obs); |
$requete = "SELECT courriel_utilisateur FROM cel_obs WHERE id_observation = $id_obs"; |
$utilisateur_courriel = $this->executerRequete($requete); |
$utilisateur_courriel = Cel::db()->executerRequete($requete); |
$retour = false; |
if (!empty($utilisateur_courriel) && isset($utilisateur_courriel[0]['courriel_utilisateur'])) { |
144,7 → 144,7 |
$requete_selection_mots_cles = 'SELECT DISTINCT id_mot_cle_obs '. |
'FROM cel_obs_mots_cles '. |
"WHERE id_observation = $id_observation "; |
return $this->executerRequete($requete_selection_mots_cles); |
return Cel::db()->executerRequete($requete_selection_mots_cles); |
} |
// TODO: fonction temporaire |
176,7 → 176,7 |
if ($valeur == "NULL") { |
$sous_requete .= "(date_observation IS NULL OR year(date_observation) = 0000)" ; |
} else { |
$sous_requete .= "(year(date_observation) = ".$this->proteger($valeur).")" ; |
$sous_requete .= "(year(date_observation) = ".Cel::db()->proteger($valeur).")" ; |
} |
$sous_requete .= ' AND ' ; |
break; |
184,7 → 184,7 |
if ($valeur == "NULL") { |
$sous_requete .= "date_observation IS NULL OR month(date_observation) = 00" ; |
} else { |
$sous_requete .= "month(date_observation) = ".$this->proteger($valeur) ; |
$sous_requete .= "month(date_observation) = ".Cel::db()->proteger($valeur) ; |
} |
$sous_requete .= ' AND ' ; |
break; |
192,7 → 192,7 |
if ($valeur == "NULL") { |
$sous_requete .= "date_observation IS NULL OR day(date_observation) = 00" ; |
} else { |
$sous_requete .= "day(date_observation) = ".$this->proteger($valeur) ; |
$sous_requete .= "day(date_observation) = ".Cel::db()->proteger($valeur) ; |
} |
$sous_requete .= ' AND ' ; |
break; |
204,11 → 204,11 |
$dpts = explode(',',$valeur); |
$sous_requete .= '('; |
foreach($dpts as $dpt) { |
$sous_requete .= "ce_zone_geo LIKE ".$this->proteger('INSEE-C:'.$dpt.'___').' OR '; |
$sous_requete .= "ce_zone_geo LIKE ".Cel::db()->proteger('INSEE-C:'.$dpt.'___').' OR '; |
} |
$sous_requete = rtrim($sous_requete,' OR ').') '; |
} else { |
$sous_requete .= "(ce_zone_geo LIKE ".$this->proteger('INSEE-C:'.$valeur.'___').')'; |
$sous_requete .= "(ce_zone_geo LIKE ".Cel::db()->proteger('INSEE-C:'.$valeur.'___').')'; |
} |
} |
$sous_requete .= ' AND ' ; |
217,7 → 217,7 |
if ($valeur == "NULL") { |
$sous_requete .= "(zone_geo IS NULL OR zone_geo = '')"; |
} else { |
$sous_requete .= "(zone_geo = ".$this->proteger($valeur).')'; |
$sous_requete .= "(zone_geo = ".Cel::db()->proteger($valeur).')'; |
} |
$sous_requete .= ' AND ' ; |
break; |
232,15 → 232,15 |
$sous_requete .= ' AND '; |
break; |
case 'date_debut': |
$sous_requete .= 'date_observation >= '.$this->proteger($this->formaterEnDateMysql($valeur)); |
$sous_requete .= 'date_observation >= '.Cel::db()->proteger($this->formaterEnDateMysql($valeur)); |
$sous_requete .= ' AND '; |
break; |
case 'date_fin': |
$sous_requete .= 'date_observation <= '.$this->proteger($this->formaterEnDateMysql($valeur)); |
$sous_requete .= 'date_observation <= '.Cel::db()->proteger($this->formaterEnDateMysql($valeur)); |
$sous_requete .= ' AND '; |
break; |
case 'taxon': |
$valeur_protegee = $this->proteger($valeur."%"); |
$valeur_protegee = Cel::db()->proteger($valeur."%"); |
$sous_requete .= "( nom_sel LIKE ".$valeur_protegee." OR". |
" nom_ret LIKE ".$valeur_protegee." OR". |
" famille LIKE ".$valeur_protegee. |
252,7 → 252,7 |
break; |
default: |
if (trim($nom) != '') { |
$sous_requete .= $nom." = ".$this->proteger($valeur) ; |
$sous_requete .= $nom." = ".Cel::db()->proteger($valeur) ; |
$sous_requete .= ' AND '; |
} |
if (trim($nom) == 'NULL') { |
276,7 → 276,7 |
private function fabriquerSousRequeteRechercheGenerale($id_utilisateur, $valeur) { |
$valeur = str_replace("*","%",$valeur); |
$valeur = $this->proteger('%'.$valeur.'%'); |
$valeur = Cel::db()->proteger('%'.$valeur.'%'); |
$sous_requete = "(nom_sel LIKE ".$valeur. |
" OR courriel_utilisateur LIKE ".$valeur. |
" OR prenom_utilisateur LIKE ".$valeur. |
307,17 → 307,17 |
if (preg_match('/.*OU.*/', $mot_cle)) { |
$mots_cles_tab = explode('OU',$mot_cle); |
foreach($mots_cles_tab as $mot_cle_item) { |
$requete .= '(mots_cles_texte LIKE '.$this->proteger('%'.$mot_cle_item.'%').') OR '; |
$requete .= '(mots_cles_texte LIKE '.Cel::db()->proteger('%'.$mot_cle_item.'%').') OR '; |
} |
$requete = '('.rtrim($requete,'OR ').')'; |
} else if (preg_match('/.*ET.*/', $mot_cle)) { |
$mots_cles_tab = explode('ET',$mot_cle); |
foreach($mots_cles_tab as $mot_cle_item) { |
$requete .= '(mots_cles_texte LIKE '.$this->proteger('%'.$mot_cle_item.'%').') AND '; |
$requete .= '(mots_cles_texte LIKE '.Cel::db()->proteger('%'.$mot_cle_item.'%').') AND '; |
} |
$requete = '('.rtrim($requete, 'AND ').') '; |
} else { |
$requete = "(mots_cles_texte LIKE ".$this->proteger('%'.$mot_cle.'%').') '; |
$requete = "(mots_cles_texte LIKE ".Cel::db()->proteger('%'.$mot_cle.'%').') '; |
} |
return $requete; |
} |
332,7 → 332,7 |
'jour' => 'date_observation', |
'departement' => 'ce_zone_geo', |
'commune' => 'zone_geo'); |
return $sous_requete .= $champs[$valeur]." = ".$this->proteger(""); |
return $sous_requete .= $champs[$valeur]." = ".Cel::db()->proteger(""); |
} |
} |
?> |
/branches/topic-dbsingleton/jrest/lib/LiaisonMotsCles.php |
---|
42,12 → 42,12 |
foreach($ids_images_ou_obs as $id_image_ou_obs) { |
foreach($mots_cles as $mot) { |
$requete_liaison_mots_cles .= '('.$id_image_ou_obs.','.$this->proteger($mot).'),'; |
$requete_liaison_mots_cles .= '('.$id_image_ou_obs.','.Cel::db()->proteger($mot).'),'; |
} |
} |
$requete_liaison_mots_cles = rtrim($requete_liaison_mots_cles,','); |
$resultat_liaison_mots_cles = $this->executer($requete_liaison_mots_cles); |
$resultat_liaison_mots_cles = Cel::db()->executer($requete_liaison_mots_cles); |
foreach($ids_images_ou_obs as $id_image_ou_obs) { |
$this->regenererIndexTexteMotCle($id_image_ou_obs, $id_utilisateur); |
80,7 → 80,7 |
$champ_objet_lie.' IN ('.implode(',',$ids_images_ou_obs).') '. |
'AND '.$champ_mot_cle.' IN ('.implode(',',$mots_cles).')'; |
$resultat_suppression_mot_cle = $this->executer($requete_suppression_liaison_mot_cle); |
$resultat_suppression_mot_cle = Cel::db()->executer($requete_suppression_liaison_mot_cle); |
if ($requete_suppression_liaison_mot_cle !== false) { |
$retour = true; |
102,7 → 102,7 |
$requete_suppression_liaison_mot_cle = 'DELETE FROM cel_'.$this->mode.'_mots_cles WHERE '. |
$champ_objet_lie.' IN ('.implode(',',$ids_images_ou_obs).') '; |
$resultat_suppression_mot_cle = $this->executer($requete_suppression_liaison_mot_cle); |
$resultat_suppression_mot_cle = Cel::db()->executer($requete_suppression_liaison_mot_cle); |
if ($requete_suppression_liaison_mot_cle !== false) { |
$retour = true; |
129,9 → 129,9 |
$requete_suppression_liaison_mot_cle = 'DELETE FROM cel_'.$this->mode.'_mots_cles WHERE '. |
$champ_mot_cle.' IN '.$chaine_mot_cles_ids; |
$resultat_suppression_mot_cle = $this->executer($requete_suppression_liaison_mot_cle); |
$resultat_suppression_mot_cle = Cel::db()->executer($requete_suppression_liaison_mot_cle); |
$resultat_requete_objets_lies_mot_cle = $this->requeter($requete_objets_lies_mot_cle); |
$resultat_requete_objets_lies_mot_cle = Cel::db()->requeter($requete_objets_lies_mot_cle); |
foreach($resultat_requete_objets_lies_mot_cle as $objet_lie) { |
$this->regenererIndexTexteMotCle($objet_lie['id'], $id_utilisateur); |
} |
161,11 → 161,11 |
private function executerRequeteMiseAJourMotCleTexte($mots_cles_texte_chaine, $id_image_ou_obs, $identifiant_utilisateur) { |
$requete = 'UPDATE '.(($this->mode == 'obs') ? 'cel_obs' : 'cel_images').' '. |
'SET mots_cles_texte = '.$this->proteger($mots_cles_texte_chaine).' '. |
'WHERE '.(($this->mode == 'obs') ? 'id_observation' : 'id_image').' = '.$this->proteger($id_image_ou_obs). |
' AND ce_utilisateur = '.$this->proteger($identifiant_utilisateur); |
'SET mots_cles_texte = '.Cel::db()->proteger($mots_cles_texte_chaine).' '. |
'WHERE '.(($this->mode == 'obs') ? 'id_observation' : 'id_image').' = '.Cel::db()->proteger($id_image_ou_obs). |
' AND ce_utilisateur = '.Cel::db()->proteger($identifiant_utilisateur); |
return $this->executer($requete); |
return Cel::db()->executer($requete); |
} |
private function obtenirMotsClesTexte($id_image_ou_obs, $identifiant_utilisateur) { |
175,11 → 175,11 |
'('. |
'SELECT id_mot_cle_'.(($this->mode == 'obs') ? 'obs' : 'image').' '. |
'FROM cel_'.$this->mode.'_mots_cles '. |
'WHERE '.(($this->mode == 'obs') ? 'id_observation' : 'id_image').' = '.$this->proteger($id_image_ou_obs). |
'WHERE '.(($this->mode == 'obs') ? 'id_observation' : 'id_image').' = '.Cel::db()->proteger($id_image_ou_obs). |
')'. |
' AND id_utilisateur = '.$this->proteger($identifiant_utilisateur); |
' AND id_utilisateur = '.Cel::db()->proteger($identifiant_utilisateur); |
$resultats = $this->requeter($requete); |
$resultats = Cel::db()->requeter($requete); |
return $resultats; |
} |
214,31 → 214,31 |
// ATTENTION : cette fonction suppose que l'utilisateur n'ai pas déjà de mots clés dans le CEL |
// avec l'identifiant $id_utilisateur ce qui est normalement le cas |
$requete_migration_mc_images = 'UPDATE cel_mots_cles_images SET '. |
'id_utilisateur = '.$this->proteger($infos_utilisateur['id_utilisateur']).' '. |
'WHERE id_utilisateur = '.$this->proteger($mail_utilisateur).' '; |
'id_utilisateur = '.Cel::db()->proteger($infos_utilisateur['id_utilisateur']).' '. |
'WHERE id_utilisateur = '.Cel::db()->proteger($mail_utilisateur).' '; |
$migration_mc_images = $this->executerRequeteSimple($requete_migration_mc_images); |
$migration_mc_images = Cel::db()->executerRequeteSimple($requete_migration_mc_images); |
// ATTENTION : cette fonction suppose que l'utilisateur n'ai pas déjà de mots clés dans le CEL |
// avec l'identifiant $id_utilisateur ce qui est normalement le cas |
$requete_migration_mc_obs = 'UPDATE cel_mots_cles_obs SET '. |
'id_utilisateur = '.$this->proteger($infos_utilisateur['id_utilisateur']).' '. |
'WHERE id_utilisateur = '.$this->proteger($mail_utilisateur).' '; |
'id_utilisateur = '.Cel::db()->proteger($infos_utilisateur['id_utilisateur']).' '. |
'WHERE id_utilisateur = '.Cel::db()->proteger($mail_utilisateur).' '; |
$migration_mc_obs = $this->executerRequeteSimple($requete_migration_mc_obs); |
$migration_mc_obs = Cel::db()->executerRequeteSimple($requete_migration_mc_obs); |
// Migration des liaisons de mots clés |
$requete_migration_mc_liaisons_obs = 'UPDATE cel_obs_mots_cles SET '. |
'id_utilisateur = '.$this->proteger($infos_utilisateur['id_utilisateur']).' '. |
'WHERE id_utilisateur = '.$this->proteger($mail_utilisateur).' '; |
'id_utilisateur = '.Cel::db()->proteger($infos_utilisateur['id_utilisateur']).' '. |
'WHERE id_utilisateur = '.Cel::db()->proteger($mail_utilisateur).' '; |
$migration_mc_liaisons_obs = $this->executerRequeteSimple($requete_migration_mc_liaisons_obs); |
$migration_mc_liaisons_obs = Cel::db()->executerRequeteSimple($requete_migration_mc_liaisons_obs); |
$requete_migration_mc_liaisons_images = 'UPDATE cel_images_mots_cles SET '. |
'id_utilisateur = '.$this->proteger($infos_utilisateur['id_utilisateur']).' '. |
'WHERE id_utilisateur = '.$this->proteger($mail_utilisateur).' '; |
'id_utilisateur = '.Cel::db()->proteger($infos_utilisateur['id_utilisateur']).' '. |
'WHERE id_utilisateur = '.Cel::db()->proteger($mail_utilisateur).' '; |
$migration_mc_liaisons_images = $this->executerRequeteSimple($requete_migration_mc_liaisons_images); |
$migration_mc_liaisons_images = Cel::db()->executerRequeteSimple($requete_migration_mc_liaisons_images); |
return $migration_mc_images !== false && |
$migration_mc_obs !== false && |
/branches/topic-dbsingleton/jrest/lib/GestionImage.php |
---|
69,7 → 69,7 |
// important ! ne pas utiliser la fonction executerRequete qui renvoie une erreur si la requete contient des | (pipes) |
// ce qui est fréquent dans les métadonnées |
// TODO: corriger la fonction ou bien continuer à utiliser executerRequeteSimple |
$resultat_insertion_infos_image = $this->executerRequeteSimple($requete_insertion_infos_image); |
$resultat_insertion_infos_image = Cel::db()->executerRequeteSimple($requete_insertion_infos_image); |
if (!$resultat_insertion_infos_image) { |
$message = "Echec de l'insertion dans la base de donnees : " ; |
99,8 → 99,8 |
$nouvel_ordre = 0 ; |
$requete_selection_ordre_max ='SELECT MAX(ordre) as max_ordre FROM cel_images WHERE ce_utilisateur = '.$this->proteger($id_utilisateur) ; |
$resultat_requete_ordre_max = $this->executerRequete($requete_selection_ordre_max); |
$requete_selection_ordre_max ='SELECT MAX(ordre) as max_ordre FROM cel_images WHERE ce_utilisateur = '.Cel::db()->proteger($id_utilisateur) ; |
$resultat_requete_ordre_max = Cel::db()->executerRequete($requete_selection_ordre_max); |
if($resultat_requete_ordre_max !== false) { |
$nouvel_ordre = $resultat_requete_ordre_max[0]['max_ordre']; |
114,8 → 114,8 |
$id_image = false; |
$requete_id_image ='SELECT id_image FROM cel_images WHERE ce_utilisateur = '.$this->proteger($id_utilisateur).' AND ordre = '.$ordre ; |
$resultat_id_image = $this->executerRequete($requete_id_image); |
$requete_id_image ='SELECT id_image FROM cel_images WHERE ce_utilisateur = '.Cel::db()->proteger($id_utilisateur).' AND ordre = '.$ordre ; |
$resultat_id_image = Cel::db()->executerRequete($requete_id_image); |
if (count($resultat_id_image) > 0) |
{ |
142,7 → 142,7 |
} |
else |
{ |
$valeurs_a_inserer .= $this->proteger($valeur).',' ; |
$valeurs_a_inserer .= Cel::db()->proteger($valeur).',' ; |
} |
} |
173,10 → 173,10 |
$champs_a_mettre_a_jour = $this->construireRequeteMajMetaDonnees($parametres); |
$requete_mise_a_jour_image .= $champs_a_mettre_a_jour; |
$requete_mise_a_jour_image .= ' WHERE id_image = '.$this->proteger($id_image). |
' AND ce_utilisateur = '.$this->proteger($utilisateur); |
$requete_mise_a_jour_image .= ' WHERE id_image = '.Cel::db()->proteger($id_image). |
' AND ce_utilisateur = '.Cel::db()->proteger($utilisateur); |
$resultat_mise_a_jour = $this->executerRequeteSimple($requete_mise_a_jour_image); |
$resultat_mise_a_jour = Cel::db()->executerRequeteSimple($requete_mise_a_jour_image); |
return ($resultat_mise_a_jour !== false); |
} |
203,11 → 203,11 |
$date_tab = explode('/',$valeur) ; |
$date = $date_tab[2].'-'.$date_tab[1].'-'.$date_tab[0] ; |
$requete_maj_champs .= $champ.' = '.$this->proteger($date).' , ' ; |
$requete_maj_champs .= $champ.' = '.Cel::db()->proteger($date).' , ' ; |
} |
else { |
$requete_maj_champs .= $champ.' = '.$this->proteger($valeur).' , ' ; |
$requete_maj_champs .= $champ.' = '.Cel::db()->proteger($valeur).' , ' ; |
} |
} |
} |
223,14 → 223,14 |
$id_image_ou_tableau = array_map(array($this,'proteger'),$ordre_image_ou_tableau); |
$ids_images = implode(',',$ordre_image_ou_tableau); |
} else { |
$ids_images = $this->proteger($ordre_image_ou_tableau); |
$ids_images = Cel::db()->proteger($ordre_image_ou_tableau); |
} |
$requete_selection_ids_images = 'SELECT id_image FROM cel_images WHERE '. |
'ce_utilisateur = '.$this->proteger($id_utilisateur).' '. |
'ce_utilisateur = '.Cel::db()->proteger($id_utilisateur).' '. |
'AND ordre IN ('.$ids_images.') '; |
$tableau_ids_images = $this->executerRequete($requete_selection_ids_images); |
$tableau_ids_images = Cel::db()->executerRequete($requete_selection_ids_images); |
$chaine_ids_images = ''; |
foreach($tableau_ids_images as $id_image) { |
$chaine_ids_images .= $id_image['id_image']; |
247,7 → 247,7 |
$id_image_ou_tableau = array_map(array($this,'proteger'),$id_image_ou_tableau); |
$chaine_ids_images = implode(',',$id_image_ou_tableau); |
} else { |
$chaine_ids_images = $this->proteger($id_image_ou_tableau); |
$chaine_ids_images = Cel::db()->proteger($id_image_ou_tableau); |
} |
$requete_suppression_images = "DELETE FROM cel_images WHERE id_image in (".$chaine_ids_images.")"; |
255,9 → 255,9 |
$requete_suppression_lien_images_obs = "DELETE FROM cel_obs_images WHERE id_image in (".$chaine_ids_images.")"; |
$requete_suppression_lien_images_mots_cles = "DELETE FROM cel_images_mots_cles WHERE id_image in (".$chaine_ids_images.")"; |
$resultat_suppression_image = $this->executerRequeteSimple($requete_suppression_images); |
$resultat_suppression_lien_images_obs = $this->executerRequeteSimple($requete_suppression_lien_images_obs); |
$resultat_suppression_lien_images_mots_cles = $this->executerRequeteSimple($requete_suppression_lien_images_mots_cles); |
$resultat_suppression_image = Cel::db()->executerRequeteSimple($requete_suppression_images); |
$resultat_suppression_lien_images_obs = Cel::db()->executerRequeteSimple($requete_suppression_lien_images_obs); |
$resultat_suppression_lien_images_mots_cles = Cel::db()->executerRequeteSimple($requete_suppression_lien_images_mots_cles); |
if ($resultat_suppression_image === false) { |
$message = 'Erreur lors de la suppression de l\'image' ; |
295,13 → 295,13 |
// ATTENTION : cette fonction suppose que l'utilisateur n'ai pas déjà d'images dans le CEL |
// avec l'identifiant $id_utilisateur ce qui est normalement le cas |
$requete_migration_releve = 'UPDATE cel_images SET '. |
'ce_utilisateur = '.$this->proteger($infos_utilisateur['id_utilisateur']).', '. |
'prenom_utilisateur = '.$this->proteger($infos_utilisateur['prenom']).', '. |
'nom_utilisateur = '.$this->proteger($infos_utilisateur['nom']).', '. |
'courriel_utilisateur = '.$this->proteger($infos_utilisateur['courriel']).' '. |
'WHERE ce_utilisateur = '.$this->proteger($mail_utilisateur).' '; |
'ce_utilisateur = '.Cel::db()->proteger($infos_utilisateur['id_utilisateur']).', '. |
'prenom_utilisateur = '.Cel::db()->proteger($infos_utilisateur['prenom']).', '. |
'nom_utilisateur = '.Cel::db()->proteger($infos_utilisateur['nom']).', '. |
'courriel_utilisateur = '.Cel::db()->proteger($infos_utilisateur['courriel']).' '. |
'WHERE ce_utilisateur = '.Cel::db()->proteger($mail_utilisateur).' '; |
$migration_releve = $this->executerRequeteSimple($requete_migration_releve); |
$migration_releve = Cel::db()->executerRequeteSimple($requete_migration_releve); |
return $migration_releve; |
} |