46,12 → 46,16 |
unset($criteres['dir']); |
|
$debut = ($debut < 0) ? 0 : $debut; |
$requete_recherche_images = 'SELECT ci.*, co.pseudo_utilisateur '; |
$requete_recherche_images = 'SELECT ci.* '; |
|
if ($this->doitJoindreTableObs($criteres, $ordre)) { |
$requete_recherche_images .= $this->fabriquerRequeteJointureObs(); |
$requete_recherche_images .= ($id_utilisateur != null) ? 'AND co.ce_utilisateur = '.Cel::db()->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_export ci '; |
$requete_recherche_images .= ($id_utilisateur != null) ? 'WHERE ci.ce_utilisateur = '.Cel::db()->proteger($id_utilisateur) : ''; |
} |
|
|
$sous_requete_recherche = $this->fabriquerSousRequeteRecherche($id_utilisateur, $criteres); |
$requete_recherche_images .= $sous_requete_recherche; |
|
69,9 → 73,13 |
public function compterImages($id_utilisateur = null, $criteres = array()) { |
$requete_recherche_images = 'SELECT COUNT(*) AS nb_images '; |
|
if ($this->doitJoindreTableObs($criteres)) { |
$requete_recherche_images .= $this->fabriquerRequeteJointureObs(); |
$requete_recherche_images .= ($id_utilisateur != null) ? 'AND co.ce_utilisateur = '.Cel::db()->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_export ci '; |
$requete_recherche_images .= ($id_utilisateur != null) ? 'WHERE ci.ce_utilisateur = '.Cel::db()->proteger($id_utilisateur) : ''; |
} |
$sous_requete_recherche = $this->fabriquerSousRequeteRecherche($id_utilisateur, $criteres); |
|
$requete_recherche_images .= $sous_requete_recherche; |
179,9 → 187,9 |
$sous_requete .= ') AND ' ; |
break; |
case "auteur": |
$sous_requete .= '(co.ce_utilisateur LIKE '.Cel::db()->proteger($valeur.'%').' OR '. |
'co.courriel_utilisateur LIKE '.Cel::db()->proteger($valeur.'%').' OR '. |
'co.pseudo_utilisateur LIKE '.Cel::db()->proteger($valeur.'%'). |
$sous_requete .= '(ci.ce_utilisateur LIKE '.Cel::db()->proteger($valeur.'%').' OR '. |
'ci.courriel_utilisateur LIKE '.Cel::db()->proteger($valeur.'%').' OR '. |
'ci.pseudo_utilisateur LIKE '.Cel::db()->proteger($valeur.'%'). |
') AND '; |
break; |
case "ce_zone_geo": |
226,9 → 234,9 |
'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 '.Cel::db()->proteger('%'.$chaine_recherche.'%').' OR '. |
'co.ce_utilisateur LIKE '.Cel::db()->proteger($chaine_recherche.'%').' OR '. |
'co.courriel_utilisateur LIKE '.Cel::db()->proteger($chaine_recherche.'%').' OR '. |
'co.pseudo_utilisateur LIKE '.Cel::db()->proteger($chaine_recherche.'%').' '. |
'ci.ce_utilisateur LIKE '.Cel::db()->proteger($chaine_recherche.'%').' OR '. |
'ci.courriel_utilisateur LIKE '.Cel::db()->proteger($chaine_recherche.'%').' OR '. |
'ci.pseudo_utilisateur LIKE '.Cel::db()->proteger($chaine_recherche.'%').' '. |
') '; |
return $requete; |
} |