229,33 → 229,6 |
return $tableau_mappage ; |
} |
|
/** Charge le nombre d'inscrits d'une table annuaire mappée |
* @param int $identifiant l'identifiant de l'annuaire mappé |
* @return int le nombre d'inscrits à un annuaire donné |
* |
*/ |
public function chargerNombreAnnuaireListeInscrits($identifiant) { |
|
$requete_informations_annuaire = 'SELECT aa_bdd, aa_table '. |
'FROM annu_annuaire '. |
'WHERE aa_id_annuaire = '.$identifiant.' '; |
$resultat_informations_annuaire = $this->requeteUn($requete_informations_annuaire); |
|
if(!$resultat_informations_annuaire) { |
trigger_error('impossible de récupérer les informations de la table '.$identifiant); |
} |
|
$requete_nombre_inscrits = 'SELECT COUNT(*) as nom_inscrits'. |
' FROM '.$resultat_informations_annuaire['aa_bdd'].'.'.$resultat_informations_annuaire['aa_table']; |
|
if(!$resultat_informations_annuaire) { |
trigger_error('impossible de récupérer le nombre d\'inscrits de la table '.$resultat_informations_annuaire['aa_bdd'].'.'.$resultat_informations_annuaire['aa_table']); |
} |
|
$resultat_nombre_inscrits = $this->requeteUn($requete_nombre_inscrits); |
return $resultat_nombre_inscrits['nom_inscrits'] ; |
} |
|
/** Charge le nombre d'inscrits d'une table annuaire mappée en les groupant par départements |
* @param int $identifiant l'identifiant de l'annuaire mappé |
* @return array un tableau indexé par les numéros de departement contenant le nombre d'inscrits à chacun |
387,32 → 360,35 |
* @param int $taille_page la taille de la page demandée |
* |
*/ |
public function chargerAnnuaireListeInscrits($identifiant, $champs_mappage, $numero_page = 1, $taille_page = 50) { |
public function chargerAnnuaireListeInscrits($id_annuaire, $numero_page = 1, $taille_page = 50) { |
|
$requete = 'SELECT * '. |
$requete_informations_annuaire = 'SELECT aa_bdd, aa_table '. |
'FROM annu_annuaire '. |
'WHERE aa_id_annuaire = '.$identifiant.' '; |
$resultat = $this->requeteTous($requete); |
$annuaire = array(); |
foreach ($resultat as $ligne) { |
$annuaire['informations'] = $ligne; |
'WHERE aa_id_annuaire = '.$id_annuaire.' '; |
|
$resultat_informations_annuaire = $this->requeteUn($requete_informations_annuaire); |
|
$champs_mappage = $this->obtenirChampsMappageAnnuaire($id_annuaire); |
|
$requete_nb_inscrits = 'SELECT COUNT( * ) as nb '.' FROM '.$resultat_informations_annuaire['aa_bdd'].'.'.$resultat_informations_annuaire['aa_table']; |
|
$resultat_nb_inscrits = $this->requeteUn($requete_nb_inscrits); |
|
$nb_inscrits = 0; |
if($resultat_nb_inscrits) { |
$nb_inscrits = $resultat_nb_inscrits['nb']; |
} |
|
$annuaire['colonnes'] = $champs_mappage; |
$requete_recherche_inscrits = 'SELECT '.$champs_mappage[0]['champ_id'].' FROM '.$resultat_informations_annuaire['aa_bdd'].'.'.$resultat_informations_annuaire['aa_table']; |
$requete_recherche_inscrits .= ' LIMIT '.(($numero_page-1)*$taille_page).','.($taille_page); |
|
$string_champs_mappage = implode(",", $champs_mappage); |
$resultat_recherche_inscrits = $this->requeteTous($requete_recherche_inscrits); |
|
$requete = 'SELECT '.$champs_mappage['champ_id']. |
' FROM '.$annuaire['informations']['aa_bdd'].'.'.$annuaire['informations']['aa_table']. |
' ORDER BY '.$champs_mappage['champ_id']. |
' LIMIT '.(($numero_page-1)*$taille_page).','.($taille_page); |
|
$resultat = $this->requeteTous($requete); |
foreach ($resultat as $colonne) { |
$annuaire['inscrits'][] = $colonne; |
if(!$resultat_recherche_inscrits) { |
$resultat_recherche_inscrits = array(); |
} |
|
return $annuaire; |
return array('total' => $nb_inscrits, 'resultat' => $resultat_recherche_inscrits) ; |
} |
|
/** |