34,7 → 34,7 |
$requete_selection_id .= ' AND ce_utilisateur = '.$this->proteger($id_utilisateur); |
$requete_selection_id .= ' ORDER BY id_observation'; |
|
$resultat_ids = $this->requeter($requete_selection_id); |
$resultat_ids = $this->executerRequete($requete_selection_id); |
|
$ids = array(); |
if(is_array($resultat_ids)) { |
60,11 → 60,10 |
|
$requete_selection_observations .= $sous_requete_recherche; |
$requete_selection_observations = rtrim($requete_selection_observations, 'AND '); |
|
$requete_selection_observations .= ' ORDER BY id_observation, ordre '; |
$requete_selection_observations .= ($debut != 0 && $limite != 0) ? 'LIMIT '.$debut.','.$limite : '' ; |
$resultats_observations = array(); |
$resultats_observations = $this->requeter($requete_selection_observations); |
$resultats_observations = $this->executerRequete($requete_selection_observations); |
|
return $resultats_observations; |
} |
85,7 → 84,7 |
$requete_selection_observations = rtrim($requete_selection_observations, 'AND '); |
|
$nb_obs = '0'; |
$resultat_requete_nombre_observations = $this->requeter($requete_selection_observations); |
$resultat_requete_nombre_observations = $this->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']; |
121,7 → 120,7 |
'FROM cel_obs_mots_cles '. |
'WHERE id_observation = '.$id_observation; |
|
return $this->requeter($requete_selection_mots_cles); |
return $this->executerRequete($requete_selection_mots_cles); |
} |
|
// TODO: fonction temporaire |
152,7 → 151,7 |
switch ($nom) { |
|
case "mots_cles"; |
$sous_requete .= 'mots_cles_texte LIKE '.$this->proteger('%'.$valeur.'%').' AND '; |
$sous_requete .= $this->creerSousRequeteMotsCles($valeur); |
break; |
|
case 'annee': |
228,6 → 227,13 |
$sous_requete .= 'date_observation <= '.$this->proteger($this->formaterEnDateMysql($valeur)); |
$sous_requete .= ' AND '; |
break; |
case 'taxon': |
$valeur_protegee = $this->proteger($valeur."%"); |
$sous_requete .= "( nom_sel LIKE ".$valeur_protegee." OR". |
" nom_ret LIKE ".$valeur_protegee." OR". |
" famille LIKE ".$valeur_protegee. |
" ) AND "; |
break; |
default: |
if(trim($nom) != '') |
{ |
280,7 → 286,27 |
" OR mots_cles_texte LIKE ".$valeur. |
")"; |
return $sous_requete; |
} |
} |
|
private function creerSousRequeteMotsCles($mot_cle) { |
$requete = ''; |
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 = '('.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 = '('.rtrim($requete, 'AND ').') '; |
} else { |
$requete = "(ci.mots_cles_texte LIKE ".$this->proteger('%'.$mot_cle.'%').') '; |
} |
return $requete; |
} |
|
private function estUnvaleurZeroNulle($valeur) { |
return $valeur == "000null"; |