/** * getHospitalList - Retourne la liste des hopitaux enregistrés * * @category stageFunction * @param string $order Paramètre selon lequel sont classés les résultats ('id', 'nom', 'alias' ou 'nb') * @param boolean $desc Ordre selon lequel on classe les résultats (TRUE : decroissant, FALSE : croissant) * @return array Array contenant la liste des hopitaux enregistrés * * @Author Ali Bellamine * * Contenu de l'array retourné :<br> * [id de l'hopital][] => (array) Array contenant les données relatives à l'hopital, voir {@link getHospitalInfo()} * */ function getHospitalList($order = 'nom', $desc = false) { global $db; /* On met le filtre */ $allowedOrder = array('id', 'nom', 'alias', 'nb'); if (in_array($order, $allowedOrder)) { $orderSql = $order; } else { $orderSql = 'nom'; } $sql = 'SELECT h.id id, h.nom nom, h.alias alias, (SELECT count(*) FROM service WHERE hopital = h.id LIMIT 1) nb FROM hopital h ORDER BY ' . $orderSql . ' '; if ($desc) { $sql .= ' DESC'; } $res = $db->query($sql); $hopitaux = array(); while ($res_f = $res->fetch()) { $hopitaux[$res_f['id']] = getHospitalInfo($res_f['id']); } return $hopitaux; }
if (isset($_GET['order'])) { $order = $_GET['order']; } else { $order = 'nom'; } if (isset($_GET['desc'])) { $desc = true; } else { $desc = false; } $listeHopitaux = getHospitalList($order, $desc); } else { if ($action == 'view' || $action == 'delete' || $action == 'edit') { // On récupère les données sur l'hopital if (count(checkHopital($_GET['id'], array())) == 0) { $hopitalData = getHospitalInfo($_GET['id']); } else { header('Location: ' . ROOT . CURRENT_FILE . '?page=' . $_GET['page']); } } } /** 2. Traitement des formulaires **/ if (isset($_POST) && count($_POST)) { /* Préparation des données : on crée un array contenant toutes les données, ce dernier sera ensuite parcouru pour créer la requête SQL qui sera préparée */ if ($action == 'edit' || $action == 'delete') { $sqlData['id'] = $hopitalData['id']; // Id de l'utilisateur